changeset 30136:8dc78ef485a4

(try_window_id): If changes are all below what is displayed in the window, and point is in the window, we still might have to find point on the display.
author Gerd Moellmann <gerd@gnu.org>
date Mon, 10 Jul 2000 20:31:22 +0000
parents b935180b3893
children 4a3808257cf4
files src/xdisp.c
diffstat 1 files changed, 8 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/src/xdisp.c	Mon Jul 10 14:14:35 2000 +0000
+++ b/src/xdisp.c	Mon Jul 10 20:31:22 2000 +0000
@@ -9083,13 +9083,14 @@
 	   && (tem = try_window_id (w)) != 0)
     {
 #if GLYPH_DEBUG
-      debug_method_add (w, "try_window_id");
+      debug_method_add (w, "try_window_id %d", tem);
 #endif
 
       if (fonts_changed_p)
 	goto restore_buffers;
       if (tem > 0)
 	goto done;
+
       /* Otherwise try_window_id has returned -1 which means that we
 	 don't want the alternative below this comment to execute.  */
     }
@@ -10230,7 +10231,11 @@
 	= make_number (Z - MATRIX_ROW_END_CHARPOS (row));
       w->window_end_bytepos
 	= Z_BYTE - MATRIX_ROW_END_BYTEPOS (row);
-      return 1;
+
+      row = MATRIX_FIRST_TEXT_ROW (w->current_matrix);
+      row = row_containing_pos (w, PT, row, NULL);
+      set_cursor_from_row (w, row, w->current_matrix, 0, 0, 0, 0);
+      return 2;
     }
 
   /* Check that window start agrees with the start of the first glyph
@@ -10661,7 +10666,7 @@
   /* Record that display has not been completed.  */
   w->window_end_valid = Qnil;
   w->desired_matrix->no_scrolling_p = 1;
-  return 1;
+  return 3;
 }