emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: BUG REPORT: `kill-buffer-query-functions'


From: Richard Stallman
Subject: Re: BUG REPORT: `kill-buffer-query-functions'
Date: Mon, 03 Mar 2003 13:58:55 -0500

Now I understand.  Does this fix it?
Thanks.

*** buffer.c.~1.414.~   Wed Feb 26 04:57:11 2003
--- buffer.c    Sun Mar  2 15:07:46 2003
***************
*** 150,155 ****
--- 150,156 ----
  /* List of functions to call that can query about killing a buffer.
     If any of these functions returns nil, we don't kill it.  */
  Lisp_Object Vkill_buffer_query_functions;
+ Lisp_Object Qkill_buffer_query_functions;
  
  /* List of functions to call before changing an unmodified buffer.  */
  Lisp_Object Vfirst_change_hook;
***************
*** 1304,1321 ****
    {
      int count = SPECPDL_INDEX ();
      Lisp_Object list;
  
      record_unwind_protect (save_excursion_restore, save_excursion_save ());
      set_buffer_internal (b);
  
      /* First run the query functions; if any query is answered no,
         don't kill the buffer.  */
!     for (list = Vkill_buffer_query_functions; CONSP (list); list = XCDR 
(list))
!       {
!       tem = call0 (XCAR (list));
!       if (NILP (tem))
!         return unbind_to (count, Qnil);
!       }
  
      /* Then run the hooks.  */
      Frun_hooks (1, &Qkill_buffer_hook);
--- 1305,1320 ----
    {
      int count = SPECPDL_INDEX ();
      Lisp_Object list;
+     Lisp_Object arglist[1];
  
      record_unwind_protect (save_excursion_restore, save_excursion_save ());
      set_buffer_internal (b);
  
      /* First run the query functions; if any query is answered no,
         don't kill the buffer.  */
!     arglist[0] = Qkill_buffer_query_functions;
!     if (NILP (Frun_hook_with_args_until_failure (1, arglist)))
!       return unbind_to (count, Qnil);
  
      /* Then run the hooks.  */
      Frun_hooks (1, &Qkill_buffer_hook);
***************
*** 5150,5155 ****
--- 5149,5157 ----
    Qafter_change_functions = intern ("after-change-functions");
    staticpro (&Qafter_change_functions);
    staticpro (&Qucs_set_table_for_input);
+ 
+   Qkill_buffer_query_functions = intern ("kill-buffer-query-functions");
+   staticpro (&Qkill_buffer_query_functions);
  
    Fput (Qprotected_field, Qerror_conditions,
        Fcons (Qprotected_field, Fcons (Qerror, Qnil)));




reply via email to

[Prev in Thread] Current Thread [Next in Thread]