Mercurial > emacs
changeset 97067:fe3f6c044772
(redisplay_window): Check return value of
compute_window_start_on_continuation_line before forcing a window
start.
author | Chong Yidong <cyd@stupidchicken.com> |
---|---|
date | Mon, 28 Jul 2008 19:37:08 +0000 |
parents | 56e49e6c5c52 |
children | 0d03ecbf000f |
files | src/xdisp.c |
diffstat | 1 files changed, 8 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/src/xdisp.c Mon Jul 28 19:36:56 2008 +0000 +++ b/src/xdisp.c Mon Jul 28 19:37:08 2008 +0000 @@ -13658,11 +13658,16 @@ && NILP (do_mouse_tracking) && CHARPOS (startp) > BEGV && CHARPOS (startp) > BEG + beg_unchanged - && CHARPOS (startp) <= Z - end_unchanged) + && CHARPOS (startp) <= Z - end_unchanged + /* Even if w->start_at_line_beg is nil, a new window may + start at a line_beg, since that's how set_buffer_window + sets it. So, we need to check the return value of + compute_window_start_on_continuation_line. (See also + bug#197). */ + && XMARKER (w->start)->buffer == current_buffer + && compute_window_start_on_continuation_line (w)) { w->force_start = Qt; - if (XMARKER (w->start)->buffer == current_buffer) - compute_window_start_on_continuation_line (w); SET_TEXT_POS_FROM_MARKER (startp, w->start); goto force_start; }