changeset 7454:8d9e41a175fa

(exec_sentinel): Don't deactivate the mark. Check for asynch buffer switch.
author Karl Heuer <kwzh@gnu.org>
date Wed, 11 May 1994 04:04:03 +0000
parents 9b14642f7d52
children 35657813817c
files src/process.c
diffstat 1 files changed, 8 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/process.c	Wed May 11 03:19:39 1994 +0000
+++ b/src/process.c	Wed May 11 04:04:03 1994 +0000
@@ -3006,10 +3006,12 @@
 exec_sentinel (proc, reason)
      Lisp_Object proc, reason;
 {
-  Lisp_Object sentinel;
+  Lisp_Object sentinel, obuffer, odeactivate;
   register struct Lisp_Process *p = XPROCESS (proc);
   int count = specpdl_ptr - specpdl;
 
+  odeactivate = Vdeactivate_mark;
+  obuffer = Fcurrent_buffer ();
   sentinel = p->sentinel;
   if (NILP (sentinel))
     return;
@@ -3021,6 +3023,11 @@
   /* Inhibit quit so that random quits don't screw up a running filter.  */
   specbind (Qinhibit_quit, Qt);
   call2 (sentinel, proc, reason);
+
+  Vdeactivate_mark = odeactivate;
+  if (! EQ (Fcurrent_buffer (), obuffer))
+    record_asynch_buffer_change ();
+
   if (waiting_for_user_input_p)
     prepare_menu_bars ();
   unbind_to (count, Qnil);