aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorRichard M. Stallman1994-05-06 06:39:48 +0000
committerRichard M. Stallman1994-05-06 06:39:48 +0000
commit8b4d685f0107250963549f928e2c9dc3f9add4dc (patch)
treef94385459331ba644c90ec2046e5c75b41b88b02 /src
parent5da3133aae3027f85c69e8e5baf9c9054b6fcbea (diff)
downloademacs-8b4d685f0107250963549f928e2c9dc3f9add4dc.tar.gz
emacs-8b4d685f0107250963549f928e2c9dc3f9add4dc.zip
(wait_reading_process_input): Don't call prepare_menu_bars
unless we are going to redisplay for a garbaged frame. (read_process_output): Call prepare_menu_bars if waiting for input. (exec_sentinel): Call prepare_menu_bars if waiting for input.
Diffstat (limited to 'src')
-rw-r--r--src/process.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/process.c b/src/process.c
index 9ef6eb1dede..eff69a13c28 100644
--- a/src/process.c
+++ b/src/process.c
@@ -1835,7 +1835,8 @@ wait_reading_process_input (time_limit, microsecs, read_kbd, do_display)
1835 1835
1836 /* It would not be safe to call this below, 1836 /* It would not be safe to call this below,
1837 where we call redisplay_preserve_echo_area. */ 1837 where we call redisplay_preserve_echo_area. */
1838 prepare_menu_bars (); 1838 if (do_display && frame_garbaged)
1839 prepare_menu_bars ();
1839 1840
1840 while (1) 1841 while (1)
1841 { 1842 {
@@ -2215,6 +2216,9 @@ read_process_output (proc, channel)
2215 if (! EQ (Fcurrent_buffer (), obuffer)) 2216 if (! EQ (Fcurrent_buffer (), obuffer))
2216 record_asynch_buffer_change (); 2217 record_asynch_buffer_change ();
2217 2218
2219 if (waiting_for_user_input_p)
2220 prepare_menu_bars ();
2221
2218#ifdef VMS 2222#ifdef VMS
2219 start_vms_process_read (vs); 2223 start_vms_process_read (vs);
2220#endif 2224#endif
@@ -2289,11 +2293,11 @@ read_process_output (proc, channel)
2289 2293
2290DEFUN ("waiting-for-user-input-p", Fwaiting_for_user_input_p, Swaiting_for_user_input_p, 2294DEFUN ("waiting-for-user-input-p", Fwaiting_for_user_input_p, Swaiting_for_user_input_p,
2291 0, 0, 0, 2295 0, 0, 0,
2292 "Returns non-NIL if emacs is waiting for input from the user.\n\ 2296 "Returns non-nil if emacs is waiting for input from the user.\n\
2293This is intended for use by asynchronous process output filters and sentinels.") 2297This is intended for use by asynchronous process output filters and sentinels.")
2294 () 2298 ()
2295{ 2299{
2296 return ((waiting_for_user_input_p) ? Qt : Qnil); 2300 return (waiting_for_user_input_p ? Qt : Qnil);
2297} 2301}
2298 2302
2299/* Sending data to subprocess */ 2303/* Sending data to subprocess */
@@ -3017,6 +3021,8 @@ exec_sentinel (proc, reason)
3017 /* Inhibit quit so that random quits don't screw up a running filter. */ 3021 /* Inhibit quit so that random quits don't screw up a running filter. */
3018 specbind (Qinhibit_quit, Qt); 3022 specbind (Qinhibit_quit, Qt);
3019 call2 (sentinel, proc, reason); 3023 call2 (sentinel, proc, reason);
3024 if (waiting_for_user_input_p)
3025 prepare_menu_bars ();
3020 unbind_to (count, Qnil); 3026 unbind_to (count, Qnil);
3021} 3027}
3022 3028