(STOP_POLLING, RESUME_POLLING): New macros.
(redisplay_internal): Use them. Do RESUME_POLLING at end of function.
This commit is contained in:
parent
3b89d388c2
commit
aac2d8b2fa
2 changed files with 23 additions and 3 deletions
|
@ -1,3 +1,13 @@
|
|||
2002-09-29 Richard M. Stallman <rms@gnu.org>
|
||||
|
||||
* xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
|
||||
(redisplay_internal): Use them. Do RESUME_POLLING at end of function.
|
||||
|
||||
2002-09-27 Richard M. Stallman <rms@gnu.org>
|
||||
|
||||
* keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
|
||||
(read_char): Use them. Do all exits thru the end of the function.
|
||||
|
||||
2002-09-27 Kenichi Handa <handa@etl.go.jp>
|
||||
|
||||
* xfaces.c (try_font_list): Pay attention to the case that FAMILY
|
||||
|
|
16
src/xdisp.c
16
src/xdisp.c
|
@ -8471,6 +8471,14 @@ reconsider_clip_changes (w, b)
|
|||
b->clip_changed = 1;
|
||||
}
|
||||
}
|
||||
|
||||
#define STOP_POLLING \
|
||||
do { if (! polling_stopped_here) stop_polling (); \
|
||||
polling_stopped_here = 1; } while (0)
|
||||
|
||||
#define RESUME_POLLING \
|
||||
do { if (polling_stopped_here) start_polling (); \
|
||||
polling_stopped_here = 0; } while (0)
|
||||
|
||||
|
||||
/* If PRESERVE_ECHO_AREA is nonzero, it means this redisplay is not in
|
||||
|
@ -8491,6 +8499,7 @@ redisplay_internal (preserve_echo_area)
|
|||
int number_of_visible_frames;
|
||||
int count;
|
||||
struct frame *sf = SELECTED_FRAME ();
|
||||
int polling_stopped_here = 0;
|
||||
|
||||
/* Non-zero means redisplay has to consider all windows on all
|
||||
frames. Zero means, only selected_window is considered. */
|
||||
|
@ -8979,7 +8988,7 @@ redisplay_internal (preserve_echo_area)
|
|||
error. */
|
||||
if (interrupt_input)
|
||||
unrequest_sigio ();
|
||||
stop_polling ();
|
||||
STOP_POLLING;
|
||||
|
||||
/* Update the display. */
|
||||
set_window_update_flags (XWINDOW (f->root_window), 1);
|
||||
|
@ -9035,7 +9044,7 @@ redisplay_internal (preserve_echo_area)
|
|||
which can cause an apparent I/O error. */
|
||||
if (interrupt_input)
|
||||
unrequest_sigio ();
|
||||
stop_polling ();
|
||||
STOP_POLLING;
|
||||
|
||||
if (FRAME_VISIBLE_P (sf) && !FRAME_OBSCURED_P (sf))
|
||||
{
|
||||
|
@ -9111,7 +9120,7 @@ redisplay_internal (preserve_echo_area)
|
|||
But it is much hairier to try to do anything about that. */
|
||||
if (interrupt_input)
|
||||
request_sigio ();
|
||||
start_polling ();
|
||||
RESUME_POLLING;
|
||||
|
||||
/* If a frame has become visible which was not before, redisplay
|
||||
again, so that we display it. Expose events for such a frame
|
||||
|
@ -9152,6 +9161,7 @@ redisplay_internal (preserve_echo_area)
|
|||
|
||||
end_of_redisplay:
|
||||
unbind_to (count, Qnil);
|
||||
RESUME_POLLING;
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue