]> git.wh0rd.org Git - nano.git/commitdiff
really fix edit_scroll() breakage
authorDavid Lawrence Ramsey <pooka109@gmail.com>
Tue, 16 Aug 2005 03:03:15 +0000 (03:03 +0000)
committerDavid Lawrence Ramsey <pooka109@gmail.com>
Tue, 16 Aug 2005 03:03:15 +0000 (03:03 +0000)
git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@2996 35c25a1d-7b9e-4130-9fde-d3aeb78583b8

src/winio.c

index d11655ad201c2af97c112329348d4abf4ae508ab..6ebe97cb21ef308b179c4e28454958c1e99a81d6 100644 (file)
@@ -3560,12 +3560,11 @@ void edit_scroll(scroll_dir direction, ssize_t nlines)
     /* Part 2: nlines is the number of lines in the scrolled region of
      * the edit window that we need to draw. */
 
-    /* If we couldn't scroll up or down all nlines lines, and we're now
-     * at the top or bottom of the file, we need to draw the entire edit
-     * window. */
-    if (i > 0 && ((direction == UP && openfile->edittop ==
-       openfile->fileage) || (direction == DOWN && openfile->current ==
-       openfile->filebot)))
+    /* If the top or bottom line of the file is now visible in the edit
+     * window, we need to draw the entire edit window. */
+    if ((direction == UP && openfile->edittop == openfile->fileage) ||
+       (direction == DOWN && openfile->edittop->lineno + editwinrows -
+       1 >= openfile->filebot->lineno))
        nlines = editwinrows;
 
     /* If the scrolled region contains only one line, and the line