diff src/process.c @ 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 33e5afbb62bf
children cfe4840ffde9
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);