Module Name:    src
Committed By:   uwe
Date:           Sun Jan  6 03:59:17 UTC 2019

Modified Files:
        src/lib/libcurses: refresh.c

Log Message:
_wnoutrefresh - fix current position checks for pads

maxy is an absolute value and should not be adjusted for begy when we
check also absolute cury.  Note that this change does not affect
calculations for normal windows as for them we always pass zero for
begy.  Ditto for x.


To generate a diff of this commit:
cvs rdiff -u -r1.103 -r1.104 src/lib/libcurses/refresh.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/lib/libcurses/refresh.c
diff -u src/lib/libcurses/refresh.c:1.103 src/lib/libcurses/refresh.c:1.104
--- src/lib/libcurses/refresh.c:1.103	Sun Jan  6 03:46:11 2019
+++ src/lib/libcurses/refresh.c	Sun Jan  6 03:59:17 2019
@@ -1,4 +1,4 @@
-/*	$NetBSD: refresh.c,v 1.103 2019/01/06 03:46:11 uwe Exp $	*/
+/*	$NetBSD: refresh.c,v 1.104 2019/01/06 03:59:17 uwe Exp $	*/
 
 /*
  * Copyright (c) 1981, 1993, 1994
@@ -34,7 +34,7 @@
 #if 0
 static char sccsid[] = "@(#)refresh.c	8.7 (Berkeley) 8/13/94";
 #else
-__RCSID("$NetBSD: refresh.c,v 1.103 2019/01/06 03:46:11 uwe Exp $");
+__RCSID("$NetBSD: refresh.c,v 1.104 2019/01/06 03:59:17 uwe Exp $");
 #endif
 #endif				/* not lint */
 
@@ -218,10 +218,10 @@ _wnoutrefresh(WINDOW *win, int begy, int
 
 	/* Check that cursor position on "win" is valid for "__virtscr" */
 	if (dwin->cury + wbegy - begy < screen->__virtscr->maxy &&
-	    dwin->cury + wbegy - begy >= 0 && dwin->cury < maxy - begy)
+	    dwin->cury + wbegy - begy >= 0 && dwin->cury < maxy)
 		screen->__virtscr->cury = dwin->cury + wbegy - begy;
 	if (dwin->curx + wbegx - begx < screen->__virtscr->maxx &&
-	    dwin->curx + wbegx - begx >= 0 && dwin->curx < maxx - begx)
+	    dwin->curx + wbegx - begx >= 0 && dwin->curx < maxx)
 		screen->__virtscr->curx = dwin->curx + wbegx - begx;
 
 	/* Copy the window flags from "win" to "__virtscr" */

Reply via email to