Fix bug #8468 with redisplay and scroll-margin > 0.

src/xdisp.c (redisplay_window): Don't try to determine the character
 position of the scroll margin if the window start point w->startp
 is outside the buffer's accessible region.
This commit is contained in:
Eli Zaretskii 2011-04-11 19:39:09 +03:00
commit e896f03ce0
2 changed files with 14 additions and 1 deletions

View file

@ -1,3 +1,9 @@
2011-04-11 Eli Zaretskii <eliz@gnu.org>
* xdisp.c (redisplay_window): Don't try to determine the character
position of the scroll margin if the window start point w->startp
is outside the buffer's accessible region. (Bug#8468)
2011-04-10 Eli Zaretskii <eliz@gnu.org>
Fix write-region and its subroutines for buffers > 2GB.

View file

@ -14252,7 +14252,14 @@ redisplay_window (Lisp_Object window, int just_this_one_p)
/* If there is a scroll margin at the top of the window, find
its character position. */
if (margin)
if (margin
/* Cannot call start_display if startp is not in the
accessible region of the buffer. This can happen when we
have just switched to a different buffer and/or changed
its restriction. In that case, startp is initialized to
the character position 1 (BEG) because we did not yet
have chance to display the buffer even once. */
&& BEGV <= CHARPOS (startp) && CHARPOS (startp) <= ZV)
{
struct it it1;