Mercurial > emacs
changeset 48911:3dc2b58e6dda
(row_containing_pos): Change exit test using last_y.
(try_window_id): Abort if row_containing_pos returns null.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Sat, 21 Dec 2002 18:09:54 +0000 |
parents | f1010d7b4fd9 |
children | b0b74923fe41 |
files | src/xdisp.c |
diffstat | 1 files changed, 13 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/src/xdisp.c Sat Dec 21 18:06:27 2002 +0000 +++ b/src/xdisp.c Sat Dec 21 18:09:54 2002 +0000 @@ -861,9 +861,11 @@ Window display dimensions ***********************************************************************/ -/* Return the window-relative maximum y + 1 for glyph rows displaying - text in window W. This is the height of W minus the height of a - mode line, if any. */ +/* Return the bottom boundary y-position for text lines in window W. + This is the first y position at which a line cannot start. + It is relative to the top of the window. + + This is the height of W minus the height of a mode line, if any. */ INLINE int window_text_bottom_y (w) @@ -11514,7 +11516,10 @@ /* Give up if we have gone too far. */ if (end && row >= end) return NULL; - if (MATRIX_ROW_BOTTOM_Y (row) >= last_y) + /* This formerly returned if they were equal. + I think that both quantities are of a "last plus one" type; + if so, when they are equal, the row is within the screen. -- rms. */ + if (MATRIX_ROW_BOTTOM_Y (row) > last_y) return NULL; /* If it is in this row, return this row. */ @@ -11734,6 +11739,8 @@ row = row_containing_pos (w, PT, r0, NULL, 0); if (row) set_cursor_from_row (w, row, current_matrix, 0, 0, 0, 0); + else + abort (); return 1; } } @@ -11773,6 +11780,8 @@ row = row_containing_pos (w, PT, r0, NULL, 0); if (row) set_cursor_from_row (w, row, current_matrix, 0, 0, 0, 0); + else + abort (); return 2; } }