diff options
| author | Eli Zaretskii | 2010-04-16 23:37:59 +0300 |
|---|---|---|
| committer | Eli Zaretskii | 2010-04-16 23:37:59 +0300 |
| commit | 0f4442efb1a1ec17448a8750e4c49defb5479982 (patch) | |
| tree | 0bac05fb2b8fb6571cbe8188a0e8b72b332afc51 /src | |
| parent | 7d4e45f81c83322b42e6ea3d3edc4fd16420ee6d (diff) | |
| download | emacs-0f4442efb1a1ec17448a8750e4c49defb5479982.tar.gz emacs-0f4442efb1a1ec17448a8750e4c49defb5479982.zip | |
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.
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 6 | ||||
| -rw-r--r-- | src/xdisp.c | 7 |
2 files changed, 12 insertions, 1 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index f3c0c562968..d1e22c730c7 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,9 @@ | |||
| 1 | 2010-04-16 Eli Zaretskii <eliz@gnu.org> | ||
| 2 | |||
| 3 | * xdisp.c (set_cursor_from_row): Don't consider possibility of | ||
| 4 | other rows with cursor unless they are different from this row and | ||
| 5 | this row is part of a continued line. (Bug#5943) | ||
| 6 | |||
| 1 | 2010-04-16 Dan Nicolaescu <dann@ics.uci.edu> | 7 | 2010-04-16 Dan Nicolaescu <dann@ics.uci.edu> |
| 2 | 8 | ||
| 3 | * s/freebsd.h: Restore osreldate.h include. | 9 | * s/freebsd.h: Restore osreldate.h include. |
diff --git a/src/xdisp.c b/src/xdisp.c index 7523da8bd7b..c23c360832f 100644 --- a/src/xdisp.c +++ b/src/xdisp.c | |||
| @@ -12925,7 +12925,12 @@ set_cursor_from_row (w, row, matrix, delta, delta_bytes, dy, dvpos) | |||
| 12925 | rows whose start and end charpos occlude point. Only set | 12925 | rows whose start and end charpos occlude point. Only set |
| 12926 | w->cursor if we found a better approximation to the cursor | 12926 | w->cursor if we found a better approximation to the cursor |
| 12927 | position than we have from previously examined rows. */ | 12927 | position than we have from previously examined rows. */ |
| 12928 | if (w->cursor.vpos >= 0 | 12928 | if (/* we already have a candidate row */ |
| 12929 | w->cursor.vpos >= 0 | ||
| 12930 | /* that candidate is not the row we are processing */ | ||
| 12931 | && MATRIX_ROW (matrix, w->cursor.vpos) != row | ||
| 12932 | /* this row is part of a continued line */ | ||
| 12933 | && (row->continued_p || row->continuation_lines_width) | ||
| 12929 | /* Make sure cursor.vpos specifies a row whose start and end | 12934 | /* Make sure cursor.vpos specifies a row whose start and end |
| 12930 | charpos occlude point. This is because some callers of this | 12935 | charpos occlude point. This is because some callers of this |
| 12931 | function leave cursor.vpos at the row where the cursor was | 12936 | function leave cursor.vpos at the row where the cursor was |