aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorRichard M. Stallman1997-07-10 01:03:05 +0000
committerRichard M. Stallman1997-07-10 01:03:05 +0000
commit8b32d885642a70dbaed95717009670e4d4afb95c (patch)
tree0898d997459e430c2d7bf803b54f1e0a415963f6 /src
parentb3bd5cbcdb0066dab4652dc54a6325796363256e (diff)
downloademacs-8b32d885642a70dbaed95717009670e4d4afb95c.tar.gz
emacs-8b32d885642a70dbaed95717009670e4d4afb95c.zip
(redisplay_internal): Fix previous change.
Diffstat (limited to 'src')
-rw-r--r--src/xdisp.c20
1 files changed, 14 insertions, 6 deletions
diff --git a/src/xdisp.c b/src/xdisp.c
index 773d7987798..3f89898d389 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -876,6 +876,8 @@ redisplay_internal (preserve_echo_area)
876 return; 876 return;
877#endif 877#endif
878 878
879 retry:
880
879 if (! FRAME_WINDOW_P (selected_frame) 881 if (! FRAME_WINDOW_P (selected_frame)
880 && previous_terminal_frame != selected_frame) 882 && previous_terminal_frame != selected_frame)
881 { 883 {
@@ -891,14 +893,12 @@ redisplay_internal (preserve_echo_area)
891 Do this before checking for resized or garbaged frames; they want 893 Do this before checking for resized or garbaged frames; they want
892 to know if their frames are visible. 894 to know if their frames are visible.
893 See the comment in frame.h for FRAME_SAMPLE_VISIBILITY. */ 895 See the comment in frame.h for FRAME_SAMPLE_VISIBILITY. */
894 number_of_frames_redisplayed = 0;
895 { 896 {
896 Lisp_Object tail, frame; 897 Lisp_Object tail, frame;
897 898
898 FOR_EACH_FRAME (tail, frame) 899 FOR_EACH_FRAME (tail, frame)
899 { 900 {
900 FRAME_SAMPLE_VISIBILITY (XFRAME (frame)); 901 FRAME_SAMPLE_VISIBILITY (XFRAME (frame));
901 number_of_frames_redisplayed++;
902 902
903 /* Clear out all the display lines in which we will generate the 903 /* Clear out all the display lines in which we will generate the
904 glyphs to display. */ 904 glyphs to display. */
@@ -967,6 +967,9 @@ redisplay_internal (preserve_echo_area)
967 Fmarker_position (XBUFFER (w->buffer)->mark)))) 967 Fmarker_position (XBUFFER (w->buffer)->mark))))
968 this_line_bufpos = -1; 968 this_line_bufpos = -1;
969 969
970 /* This is in case we goto update, below. */
971 number_of_frames_redisplayed = 1;
972
970 tlbufpos = this_line_bufpos; 973 tlbufpos = this_line_bufpos;
971 tlendpos = this_line_endpos; 974 tlendpos = this_line_endpos;
972 if (!all_windows && tlbufpos > 0 && NILP (w->update_mode_line) 975 if (!all_windows && tlbufpos > 0 && NILP (w->update_mode_line)
@@ -1141,6 +1144,7 @@ redisplay_internal (preserve_echo_area)
1141 /* Recompute # windows showing selected buffer. 1144 /* Recompute # windows showing selected buffer.
1142 This will be incremented each time such a window is displayed. */ 1145 This will be incremented each time such a window is displayed. */
1143 buffer_shared = 0; 1146 buffer_shared = 0;
1147 number_of_frames_redisplayed = 0;
1144 1148
1145 FOR_EACH_FRAME (tail, frame) 1149 FOR_EACH_FRAME (tail, frame)
1146 { 1150 {
@@ -1154,7 +1158,10 @@ redisplay_internal (preserve_echo_area)
1154 (*condemn_scroll_bars_hook) (f); 1158 (*condemn_scroll_bars_hook) (f);
1155 1159
1156 if (FRAME_VISIBLE_P (f)) 1160 if (FRAME_VISIBLE_P (f))
1157 redisplay_windows (FRAME_ROOT_WINDOW (f), preserve_echo_area); 1161 {
1162 redisplay_windows (FRAME_ROOT_WINDOW (f), preserve_echo_area);
1163 number_of_frames_redisplayed++;
1164 }
1158 1165
1159 /* Any scroll bars which redisplay_windows should have nuked 1166 /* Any scroll bars which redisplay_windows should have nuked
1160 should now go away. */ 1167 should now go away. */
@@ -1168,6 +1175,7 @@ redisplay_internal (preserve_echo_area)
1168 redisplay_window (selected_window, 1, preserve_echo_area); 1175 redisplay_window (selected_window, 1, preserve_echo_area);
1169 if (!WINDOW_FULL_WIDTH_P (w)) 1176 if (!WINDOW_FULL_WIDTH_P (w))
1170 preserve_other_columns (w); 1177 preserve_other_columns (w);
1178 number_of_frames_redisplayed = 1;
1171 } 1179 }
1172 1180
1173update: 1181update:
@@ -1336,10 +1344,10 @@ update:
1336 /* Change frame size now if a change is pending. */ 1344 /* Change frame size now if a change is pending. */
1337 do_pending_window_change (); 1345 do_pending_window_change ();
1338 1346
1339 /* If we just did a pending size change, redisplay again 1347 /* If we just did a pending size change, or have additional
1340 for the new size. */ 1348 visible frames, redisplay again. */
1341 if (windows_or_buffers_changed && !pause) 1349 if (windows_or_buffers_changed && !pause)
1342 redisplay (); 1350 goto retry;
1343} 1351}
1344 1352
1345/* Redisplay, but leave alone any recent echo area message 1353/* Redisplay, but leave alone any recent echo area message