Mercurial > emacs
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);