# HG changeset patch # User Eli Zaretskii # Date 1271450279 -10800 # Node ID 6effcd2bae9fc282fe9e793f9a5121921e81802c # Parent 43aef96c6073614b9c7723d5b9fb6458a8588f46 Fix bug #5943: C-e in a truncated line doesn't auto-hscroll. xdisp.c (set_cursor_from_row): Don't consider possibility of other rows with cursor unless they are different from this row and this row is part of a continued line. diff -r 43aef96c6073 -r 6effcd2bae9f src/ChangeLog --- a/src/ChangeLog Fri Apr 16 10:22:12 2010 -0700 +++ b/src/ChangeLog Fri Apr 16 23:37:59 2010 +0300 @@ -1,3 +1,9 @@ +2010-04-16 Eli Zaretskii + + * xdisp.c (set_cursor_from_row): Don't consider possibility of + other rows with cursor unless they are different from this row and + this row is part of a continued line. (Bug#5943) + 2010-04-16 Dan Nicolaescu * s/freebsd.h: Restore osreldate.h include. diff -r 43aef96c6073 -r 6effcd2bae9f src/xdisp.c --- a/src/xdisp.c Fri Apr 16 10:22:12 2010 -0700 +++ b/src/xdisp.c Fri Apr 16 23:37:59 2010 +0300 @@ -12925,7 +12925,12 @@ rows whose start and end charpos occlude point. Only set w->cursor if we found a better approximation to the cursor position than we have from previously examined rows. */ - if (w->cursor.vpos >= 0 + if (/* we already have a candidate row */ + w->cursor.vpos >= 0 + /* that candidate is not the row we are processing */ + && MATRIX_ROW (matrix, w->cursor.vpos) != row + /* this row is part of a continued line */ + && (row->continued_p || row->continuation_lines_width) /* Make sure cursor.vpos specifies a row whose start and end charpos occlude point. This is because some callers of this function leave cursor.vpos at the row where the cursor was