diff options
| author | Richard M. Stallman | 1994-07-13 03:52:05 +0000 |
|---|---|---|
| committer | Richard M. Stallman | 1994-07-13 03:52:05 +0000 |
| commit | 6545aadab74071c9dc71c7c54ab4c59e778dbc61 (patch) | |
| tree | 299003700cb7f1ad2b3842b4503240155d33d929 /src/process.c | |
| parent | 6ae1efb4190016d75dc099e905d650eafeded8b3 (diff) | |
| download | emacs-6545aadab74071c9dc71c7c54ab4c59e778dbc61.tar.gz emacs-6545aadab74071c9dc71c7c54ab4c59e778dbc61.zip | |
(Qlast_nonmenu_event): New variable.
(syms_of_process): Set it up.
(read_process_output, exec_sentinel): Bind it to t around filter.
Diffstat (limited to 'src/process.c')
| -rw-r--r-- | src/process.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/process.c b/src/process.c index 9f740e4d026..3c62349a898 100644 --- a/src/process.c +++ b/src/process.c | |||
| @@ -96,6 +96,7 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ | |||
| 96 | 96 | ||
| 97 | Lisp_Object Qprocessp; | 97 | Lisp_Object Qprocessp; |
| 98 | Lisp_Object Qrun, Qstop, Qsignal, Qopen, Qclosed; | 98 | Lisp_Object Qrun, Qstop, Qsignal, Qopen, Qclosed; |
| 99 | Lisp_Object Qlast_nonmenu_event; | ||
| 99 | /* Qexit is declared and initialized in eval.c. */ | 100 | /* Qexit is declared and initialized in eval.c. */ |
| 100 | 101 | ||
| 101 | /* a process object is a network connection when its childp field is neither | 102 | /* a process object is a network connection when its childp field is neither |
| @@ -2231,6 +2232,7 @@ read_process_output (proc, channel) | |||
| 2231 | obuffer = Fcurrent_buffer (); | 2232 | obuffer = Fcurrent_buffer (); |
| 2232 | 2233 | ||
| 2233 | specbind (Qinhibit_quit, Qt); | 2234 | specbind (Qinhibit_quit, Qt); |
| 2235 | specbind (Qlast_nonmenu_event, Qt); | ||
| 2234 | call2 (outstream, proc, make_string (chars, nchars)); | 2236 | call2 (outstream, proc, make_string (chars, nchars)); |
| 2235 | 2237 | ||
| 2236 | /* Handling the process output should not deactivate the mark. */ | 2238 | /* Handling the process output should not deactivate the mark. */ |
| @@ -3092,6 +3094,7 @@ exec_sentinel (proc, reason) | |||
| 3092 | record_unwind_protect (exec_sentinel_unwind, Fcons (proc, sentinel)); | 3094 | record_unwind_protect (exec_sentinel_unwind, Fcons (proc, sentinel)); |
| 3093 | /* Inhibit quit so that random quits don't screw up a running filter. */ | 3095 | /* Inhibit quit so that random quits don't screw up a running filter. */ |
| 3094 | specbind (Qinhibit_quit, Qt); | 3096 | specbind (Qinhibit_quit, Qt); |
| 3097 | specbind (Qlast_nonmenu_event, Qt); | ||
| 3095 | call2 (sentinel, proc, reason); | 3098 | call2 (sentinel, proc, reason); |
| 3096 | 3099 | ||
| 3097 | Vdeactivate_mark = odeactivate; | 3100 | Vdeactivate_mark = odeactivate; |
| @@ -3272,6 +3275,9 @@ syms_of_process () | |||
| 3272 | Qclosed = intern ("closed"); | 3275 | Qclosed = intern ("closed"); |
| 3273 | staticpro (&Qclosed); | 3276 | staticpro (&Qclosed); |
| 3274 | 3277 | ||
| 3278 | Qlast_nonmenu_event = intern ("last-nonmenu-event"); | ||
| 3279 | staticpro (&Qlast_nonmenu_event); | ||
| 3280 | |||
| 3275 | staticpro (&Vprocess_alist); | 3281 | staticpro (&Vprocess_alist); |
| 3276 | 3282 | ||
| 3277 | DEFVAR_BOOL ("delete-exited-processes", &delete_exited_processes, | 3283 | DEFVAR_BOOL ("delete-exited-processes", &delete_exited_processes, |