aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorGerd Moellmann2000-03-20 12:24:13 +0000
committerGerd Moellmann2000-03-20 12:24:13 +0000
commit15e26c76c968d85f2f27ea899d3cadc28a1e10c6 (patch)
treea61994b379fcb243bd4806d294ad74570dff23a6 /src
parent35a2a6a0d0cbe2c8f2d1e9783725b6d14718db35 (diff)
downloademacs-15e26c76c968d85f2f27ea899d3cadc28a1e10c6.tar.gz
emacs-15e26c76c968d85f2f27ea899d3cadc28a1e10c6.zip
(handle_single_display_prop): Initialize local `value'.
(try_window_reusing_current_matrix): Don't call scroll run function if run's current and desired position are the same; this prevents cursor flickering.
Diffstat (limited to 'src')
-rw-r--r--src/xdisp.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/xdisp.c b/src/xdisp.c
index 33a87327850..3a3285e626d 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -2456,6 +2456,7 @@ handle_single_display_prop (it, prop, object, position)
2456 space_or_image_found_p = 1; 2456 space_or_image_found_p = 1;
2457 start_pos = *position; 2457 start_pos = *position;
2458 *position = display_prop_end (it, object, start_pos); 2458 *position = display_prop_end (it, object, start_pos);
2459 value = Qnil;
2459 2460
2460 /* Let's stop at the new position and assume that all 2461 /* Let's stop at the new position and assume that all
2461 text properties change there. */ 2462 text properties change there. */
@@ -5325,7 +5326,7 @@ with_echo_area_buffer (w, which, fn, a1, a2, a3, a4, a5)
5325 int a1, a2, a3, a4, a5; 5326 int a1, a2, a3, a4, a5;
5326{ 5327{
5327 Lisp_Object buffer; 5328 Lisp_Object buffer;
5328 int i, this_one, the_other, clear_buffer_p, rc; 5329 int this_one, the_other, clear_buffer_p, rc;
5329 int count = specpdl_ptr - specpdl; 5330 int count = specpdl_ptr - specpdl;
5330 5331
5331 /* If buffers aren't life, make new ones. */ 5332 /* If buffers aren't life, make new ones. */
@@ -7785,7 +7786,7 @@ update:
7785 w->current_matrix->begv = BUF_BEGV (b); 7786 w->current_matrix->begv = BUF_BEGV (b);
7786 w->current_matrix->zv = BUF_ZV (b); 7787 w->current_matrix->zv = BUF_ZV (b);
7787 } 7788 }
7788 7789
7789 update_mode_lines = 0; 7790 update_mode_lines = 0;
7790 windows_or_buffers_changed = 0; 7791 windows_or_buffers_changed = 0;
7791 } 7792 }
@@ -8983,7 +8984,8 @@ redisplay_window (window, just_this_one_p)
8983 If point has not moved off frame, accept the results. */ 8984 If point has not moved off frame, accept the results. */
8984 if (!current_matrix_up_to_date_p 8985 if (!current_matrix_up_to_date_p
8985 /* Don't use try_window_reusing_current_matrix in this case 8986 /* Don't use try_window_reusing_current_matrix in this case
8986 because it can have changed the buffer. */ 8987 because a window scroll function can have changed the
8988 buffer. */
8987 || !NILP (Vwindow_scroll_functions) 8989 || !NILP (Vwindow_scroll_functions)
8988 || MINI_WINDOW_P (w) 8990 || MINI_WINDOW_P (w)
8989 || !try_window_reusing_current_matrix (w)) 8991 || !try_window_reusing_current_matrix (w))
@@ -9480,7 +9482,8 @@ try_window_reusing_current_matrix (w)
9480 run.current_y = first_row_y; 9482 run.current_y = first_row_y;
9481 run.desired_y = it.current_y; 9483 run.desired_y = it.current_y;
9482 run.height = it.last_visible_y - it.current_y; 9484 run.height = it.last_visible_y - it.current_y;
9483 if (run.height > 0) 9485 if (run.height > 0
9486 && run.current_y != run.desired_y)
9484 { 9487 {
9485 update_begin (f); 9488 update_begin (f);
9486 rif->update_window_begin_hook (w); 9489 rif->update_window_begin_hook (w);