Module Name: src
Committed By: blymn
Date: Sun Jun 9 07:40:14 UTC 2019
Modified Files:
src/lib/libcurses: add_wch.c add_wchstr.c addbytes.c addch.c
addchnstr.c addnstr.c addwstr.c copywin.c curses_private.h delch.c
erase.c get_wch.c get_wstr.c getch.c getstr.c in_wch.c in_wchstr.c
inch.c inchstr.c ins_wch.c ins_wstr.c insch.c insstr.c instr.c
inwstr.c line.c move.c newwin.c printw.c refresh.c scroll.c
Log Message:
Rework previous fix for getch cursor position when cursor is moved
without refresh. If the window is not dirty but the window cursor
position does not match curscr then move the cursor. This fixes
the issues seen in PR lib/54263.
To generate a diff of this commit:
cvs rdiff -u -r1.8 -r1.9 src/lib/libcurses/add_wch.c
cvs rdiff -u -r1.7 -r1.8 src/lib/libcurses/add_wchstr.c \
src/lib/libcurses/addchnstr.c src/lib/libcurses/get_wstr.c \
src/lib/libcurses/in_wchstr.c src/lib/libcurses/inwstr.c
cvs rdiff -u -r1.51 -r1.52 src/lib/libcurses/addbytes.c
cvs rdiff -u -r1.20 -r1.21 src/lib/libcurses/addch.c src/lib/libcurses/move.c
cvs rdiff -u -r1.16 -r1.17 src/lib/libcurses/addnstr.c
cvs rdiff -u -r1.5 -r1.6 src/lib/libcurses/addwstr.c
cvs rdiff -u -r1.18 -r1.19 src/lib/libcurses/copywin.c
cvs rdiff -u -r1.70 -r1.71 src/lib/libcurses/curses_private.h
cvs rdiff -u -r1.25 -r1.26 src/lib/libcurses/delch.c \
src/lib/libcurses/scroll.c
cvs rdiff -u -r1.27 -r1.28 src/lib/libcurses/erase.c
cvs rdiff -u -r1.22 -r1.23 src/lib/libcurses/get_wch.c
cvs rdiff -u -r1.72 -r1.73 src/lib/libcurses/getch.c
cvs rdiff -u -r1.26 -r1.27 src/lib/libcurses/getstr.c
cvs rdiff -u -r1.6 -r1.7 src/lib/libcurses/in_wch.c \
src/lib/libcurses/insstr.c src/lib/libcurses/instr.c
cvs rdiff -u -r1.13 -r1.14 src/lib/libcurses/inch.c \
src/lib/libcurses/ins_wch.c src/lib/libcurses/ins_wstr.c
cvs rdiff -u -r1.9 -r1.10 src/lib/libcurses/inchstr.c
cvs rdiff -u -r1.24 -r1.25 src/lib/libcurses/insch.c
cvs rdiff -u -r1.10 -r1.11 src/lib/libcurses/line.c
cvs rdiff -u -r1.56 -r1.57 src/lib/libcurses/newwin.c
cvs rdiff -u -r1.28 -r1.29 src/lib/libcurses/printw.c
cvs rdiff -u -r1.110 -r1.111 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/add_wch.c
diff -u src/lib/libcurses/add_wch.c:1.8 src/lib/libcurses/add_wch.c:1.9
--- src/lib/libcurses/add_wch.c:1.8 Mon May 20 22:17:41 2019
+++ src/lib/libcurses/add_wch.c Sun Jun 9 07:40:14 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: add_wch.c,v 1.8 2019/05/20 22:17:41 blymn Exp $ */
+/* $NetBSD: add_wch.c,v 1.9 2019/06/09 07:40:14 blymn Exp $ */
/*
* Copyright (c) 2005 The NetBSD Foundation Inc.
@@ -36,7 +36,7 @@
#include <sys/cdefs.h>
#ifndef lint
-__RCSID("$NetBSD: add_wch.c,v 1.8 2019/05/20 22:17:41 blymn Exp $");
+__RCSID("$NetBSD: add_wch.c,v 1.9 2019/06/09 07:40:14 blymn Exp $");
#endif /* not lint */
#include <stdlib.h>
@@ -76,7 +76,7 @@ mvadd_wch(int y, int x, const cchar_t *w
int
mvwadd_wch(WINDOW *win, int y, int x, const cchar_t *wch)
{
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return wadd_wch(win, wch);
Index: src/lib/libcurses/add_wchstr.c
diff -u src/lib/libcurses/add_wchstr.c:1.7 src/lib/libcurses/add_wchstr.c:1.8
--- src/lib/libcurses/add_wchstr.c:1.7 Mon May 20 22:17:41 2019
+++ src/lib/libcurses/add_wchstr.c Sun Jun 9 07:40:14 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: add_wchstr.c,v 1.7 2019/05/20 22:17:41 blymn Exp $ */
+/* $NetBSD: add_wchstr.c,v 1.8 2019/06/09 07:40:14 blymn Exp $ */
/*
* Copyright (c) 2005 The NetBSD Foundation Inc.
@@ -36,7 +36,7 @@
#include <sys/cdefs.h>
#ifndef lint
-__RCSID("$NetBSD: add_wchstr.c,v 1.7 2019/05/20 22:17:41 blymn Exp $");
+__RCSID("$NetBSD: add_wchstr.c,v 1.8 2019/06/09 07:40:14 blymn Exp $");
#endif /* not lint */
#include <stdlib.h>
@@ -120,7 +120,7 @@ mvadd_wchnstr(int y, int x, const cchar_
int
mvwadd_wchnstr(WINDOW *win, int y, int x, const cchar_t *wchstr, int n)
{
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return wadd_wchnstr(win, wchstr, n);
Index: src/lib/libcurses/addchnstr.c
diff -u src/lib/libcurses/addchnstr.c:1.7 src/lib/libcurses/addchnstr.c:1.8
--- src/lib/libcurses/addchnstr.c:1.7 Mon May 20 22:17:41 2019
+++ src/lib/libcurses/addchnstr.c Sun Jun 9 07:40:14 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: addchnstr.c,v 1.7 2019/05/20 22:17:41 blymn Exp $ */
+/* $NetBSD: addchnstr.c,v 1.8 2019/06/09 07:40:14 blymn Exp $ */
/*
* Copyright (c) 2003 The NetBSD Foundation, Inc.
@@ -31,7 +31,7 @@
#include <sys/cdefs.h>
#ifndef lint
-__RCSID("$NetBSD: addchnstr.c,v 1.7 2019/05/20 22:17:41 blymn Exp $");
+__RCSID("$NetBSD: addchnstr.c,v 1.8 2019/06/09 07:40:14 blymn Exp $");
#endif /* not lint */
#include <stdlib.h>
@@ -111,7 +111,7 @@ mvaddchnstr(int y, int x, const chtype *
int
mvwaddchnstr(WINDOW *win, int y, int x, const chtype *chstr, int n)
{
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return waddchnstr(win, chstr, n);
@@ -180,6 +180,6 @@ waddchnstr(WINDOW *win, const chtype *ch
*cp = '\0';
ret = _cursesi_waddbytes(win, start, i, attr, 0);
free(ocp);
- _cursesi_wmove(win, oy, ox, 1);
+ wmove(win, oy, ox);
return ret;
}
Index: src/lib/libcurses/get_wstr.c
diff -u src/lib/libcurses/get_wstr.c:1.7 src/lib/libcurses/get_wstr.c:1.8
--- src/lib/libcurses/get_wstr.c:1.7 Mon May 20 22:17:41 2019
+++ src/lib/libcurses/get_wstr.c Sun Jun 9 07:40:14 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: get_wstr.c,v 1.7 2019/05/20 22:17:41 blymn Exp $ */
+/* $NetBSD: get_wstr.c,v 1.8 2019/06/09 07:40:14 blymn Exp $ */
/*
* Copyright (c) 2005 The NetBSD Foundation Inc.
@@ -36,7 +36,7 @@
#include <sys/cdefs.h>
#ifndef lint
-__RCSID("$NetBSD: get_wstr.c,v 1.7 2019/05/20 22:17:41 blymn Exp $");
+__RCSID("$NetBSD: get_wstr.c,v 1.8 2019/06/09 07:40:14 blymn Exp $");
#endif /* not lint */
#include "curses.h"
@@ -98,7 +98,7 @@ mvget_wstr(int y, int x, wchar_t *wstr)
int
mvwgetn_wstr(WINDOW *win, int y, int x, wchar_t *wstr, int n)
{
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return wgetn_wstr(win, wstr, n);
@@ -113,7 +113,7 @@ __warn_references(mvget_wstr,
int
mvwget_wstr(WINDOW *win, int y, int x, wchar_t *wstr)
{
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return wget_wstr(win, wstr);
@@ -188,7 +188,7 @@ __wgetn_wstr(WINDOW *win, wchar_t *wstr,
if ((wchar_t)wc == ec) {
mvwadd_wch(win, win->cury,
win->curx, &cc);
- _cursesi_wmove(win, win->cury, win->curx - 1, 1);
+ wmove(win, win->cury, win->curx - 1);
}
if (wc == KEY_BACKSPACE || wc == KEY_LEFT) {
/* getch() displays the key sequence */
@@ -196,7 +196,7 @@ __wgetn_wstr(WINDOW *win, wchar_t *wstr,
win->curx - 1, &cc);
mvwadd_wch(win, win->cury,
win->curx - 2, &cc);
- _cursesi_wmove(win, win->cury, win->curx - 1, 1);
+ wmove(win, win->cury, win->curx - 1);
}
wstr--;
if (n != -1) {
@@ -208,7 +208,7 @@ __wgetn_wstr(WINDOW *win, wchar_t *wstr,
/* getch() displays the other keys */
mvwadd_wch(win, win->cury,
win->curx - 1, &cc);
- _cursesi_wmove(win, win->cury, oldx, 1);
+ wmove(win, win->cury, oldx);
}
} else if (wc == kc) {
*wstr = L'\0';
@@ -219,29 +219,29 @@ __wgetn_wstr(WINDOW *win, wchar_t *wstr,
while (wstr != ostr) {
mvwadd_wch(win, win->cury,
win->curx - 1, &cc);
- _cursesi_wmove(win, win->cury, win->curx - 1, 1);
+ wmove(win, win->cury, win->curx - 1);
wstr--;
if (n != -1)
/* We're counting chars */
remain++;
}
mvwadd_wch(win, win->cury, win->curx - 1, &cc);
- _cursesi_wmove(win, win->cury, win->curx - 1, 1);
+ wmove(win, win->cury, win->curx - 1);
} else
/* getch() displays the kill character */
mvwadd_wch( win, win->cury, oldx, &cc );
- _cursesi_wmove(win, win->cury, oldx, 0);
+ wmove(win, win->cury, oldx);
} else if (wc >= KEY_MIN && wc <= KEY_MAX) {
/* get_wch() displays these characters */
mvwadd_wch( win, win->cury, win->curx - 1, &cc );
- _cursesi_wmove(win, win->cury, win->curx - 1, 1);
+ wmove(win, win->cury, win->curx - 1);
} else {
if (remain) {
wstr++;
remain--;
} else {
mvwadd_wch(win, win->cury, win->curx - 1, &cc);
- _cursesi_wmove(win, win->cury, win->curx - 1, 1);
+ wmove(win, win->cury, win->curx - 1);
}
}
}
Index: src/lib/libcurses/in_wchstr.c
diff -u src/lib/libcurses/in_wchstr.c:1.7 src/lib/libcurses/in_wchstr.c:1.8
--- src/lib/libcurses/in_wchstr.c:1.7 Mon May 20 22:17:41 2019
+++ src/lib/libcurses/in_wchstr.c Sun Jun 9 07:40:14 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: in_wchstr.c,v 1.7 2019/05/20 22:17:41 blymn Exp $ */
+/* $NetBSD: in_wchstr.c,v 1.8 2019/06/09 07:40:14 blymn Exp $ */
/*
* Copyright (c) 2005 The NetBSD Foundation Inc.
@@ -36,7 +36,7 @@
#include <sys/cdefs.h>
#ifndef lint
-__RCSID("$NetBSD: in_wchstr.c,v 1.7 2019/05/20 22:17:41 blymn Exp $");
+__RCSID("$NetBSD: in_wchstr.c,v 1.8 2019/06/09 07:40:14 blymn Exp $");
#endif /* not lint */
#include "curses.h"
@@ -87,7 +87,7 @@ __warn_references(mvwin_wchstr,
int
mvwin_wchstr(WINDOW *win, int y, int x, cchar_t *wchstr)
{
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return win_wchstr(win, wchstr);
@@ -96,7 +96,7 @@ mvwin_wchstr(WINDOW *win, int y, int x,
int
mvwin_wchnstr(WINDOW *win, int y, int x, cchar_t *wchstr, int n)
{
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return win_wchnstr(win, wchstr, n);
Index: src/lib/libcurses/inwstr.c
diff -u src/lib/libcurses/inwstr.c:1.7 src/lib/libcurses/inwstr.c:1.8
--- src/lib/libcurses/inwstr.c:1.7 Mon May 20 22:17:41 2019
+++ src/lib/libcurses/inwstr.c Sun Jun 9 07:40:14 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: inwstr.c,v 1.7 2019/05/20 22:17:41 blymn Exp $ */
+/* $NetBSD: inwstr.c,v 1.8 2019/06/09 07:40:14 blymn Exp $ */
/*
* Copyright (c) 2005 The NetBSD Foundation Inc.
@@ -36,7 +36,7 @@
#include <sys/cdefs.h>
#ifndef lint
-__RCSID("$NetBSD: inwstr.c,v 1.7 2019/05/20 22:17:41 blymn Exp $");
+__RCSID("$NetBSD: inwstr.c,v 1.8 2019/06/09 07:40:14 blymn Exp $");
#endif /* not lint */
#include "curses.h"
@@ -87,7 +87,7 @@ __warn_references(mvwinwstr,
int
mvwinwstr(WINDOW *win, int y, int x, wchar_t *wstr)
{
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return winwstr(win, wstr);
@@ -96,7 +96,7 @@ mvwinwstr(WINDOW *win, int y, int x, wch
int
mvwinnwstr(WINDOW *win, int y, int x, wchar_t *wstr, int n)
{
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return winnwstr(win, wstr, n);
Index: src/lib/libcurses/addbytes.c
diff -u src/lib/libcurses/addbytes.c:1.51 src/lib/libcurses/addbytes.c:1.52
--- src/lib/libcurses/addbytes.c:1.51 Mon May 20 22:17:41 2019
+++ src/lib/libcurses/addbytes.c Sun Jun 9 07:40:14 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: addbytes.c,v 1.51 2019/05/20 22:17:41 blymn Exp $ */
+/* $NetBSD: addbytes.c,v 1.52 2019/06/09 07:40:14 blymn Exp $ */
/*
* Copyright (c) 1987, 1993, 1994
@@ -34,7 +34,7 @@
#if 0
static char sccsid[] = "@(#)addbytes.c 8.4 (Berkeley) 5/4/94";
#else
-__RCSID("$NetBSD: addbytes.c,v 1.51 2019/05/20 22:17:41 blymn Exp $");
+__RCSID("$NetBSD: addbytes.c,v 1.52 2019/06/09 07:40:14 blymn Exp $");
#endif
#endif /* not lint */
@@ -47,9 +47,9 @@ __RCSID("$NetBSD: addbytes.c,v 1.51 2019
#endif
#define SYNCH_IN {y = win->cury; x = win->curx;}
-#define SYNCH_OUT {win->cury = y; win->curx = x; win->ocury = y; win->ocurx = x;}
+#define SYNCH_OUT {win->cury = y; win->curx = x;}
#define PSYNCH_IN {*y = win->cury; *x = win->curx;}
-#define PSYNCH_OUT {win->cury = *y; win->curx = *x; win->ocury = *y; win->ocurx = *x;}
+#define PSYNCH_OUT {win->cury = *y; win->curx = *x;}
#ifndef _CURSES_USE_MACROS
@@ -94,7 +94,7 @@ int
mvwaddbytes(WINDOW *win, int y, int x, const char *bytes, int count)
{
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return _cursesi_waddbytes(win, bytes, count, 0, 1);
@@ -241,14 +241,12 @@ _cursesi_addbyte(WINDOW *win, __LINE **l
case '\r':
*x = 0;
win->curx = *x;
- win->ocurx = *x;
return OK;
case '\b':
if (--(*x) < 0)
*x = 0;
win->curx = *x;
- win->ocurx = *x;
return OK;
}
}
@@ -364,12 +362,10 @@ _cursesi_addwchar(WINDOW *win, __LINE **
if (--*x < 0)
*x = 0;
win->curx = *x;
- win->ocurx = *x;
return OK;
case L'\r':
*x = 0;
win->curx = *x;
- win->ocurx = *x;
return OK;
case L'\n':
wclrtoeol(win);
@@ -512,7 +508,6 @@ _cursesi_addwchar(WINDOW *win, __LINE **
(*lnp) = win->alines[*y];
}
win->cury = *y;
- win->ocury = *y;
/* add spacing character */
#ifdef DEBUG
@@ -602,11 +597,10 @@ _cursesi_addwchar(WINDOW *win, __LINE **
}
lp = &win->alines[*y]->line[0];
(*lnp) = win->alines[*y];
- win->curx = win->ocurx = *x;
- win->cury = win->ocury = *y;
+ win->curx = *x;
+ win->cury = *y;
} else {
win->curx = *x;
- win->ocurx = *x;
/* clear the remining of the current characer */
if (*x && *x < win->maxx) {
Index: src/lib/libcurses/addch.c
diff -u src/lib/libcurses/addch.c:1.20 src/lib/libcurses/addch.c:1.21
--- src/lib/libcurses/addch.c:1.20 Mon May 20 22:17:41 2019
+++ src/lib/libcurses/addch.c Sun Jun 9 07:40:14 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: addch.c,v 1.20 2019/05/20 22:17:41 blymn Exp $ */
+/* $NetBSD: addch.c,v 1.21 2019/06/09 07:40:14 blymn Exp $ */
/*
* Copyright (c) 1981, 1993, 1994
@@ -34,7 +34,7 @@
#if 0
static char sccsid[] = "@(#)addch.c 8.2 (Berkeley) 5/4/94";
#else
-__RCSID("$NetBSD: addch.c,v 1.20 2019/05/20 22:17:41 blymn Exp $");
+__RCSID("$NetBSD: addch.c,v 1.21 2019/06/09 07:40:14 blymn Exp $");
#endif
#endif /* not lint */
@@ -74,7 +74,7 @@ int
mvwaddch(WINDOW *win, int y, int x, chtype ch)
{
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return waddch(win, ch);
Index: src/lib/libcurses/move.c
diff -u src/lib/libcurses/move.c:1.20 src/lib/libcurses/move.c:1.21
--- src/lib/libcurses/move.c:1.20 Mon May 20 22:17:41 2019
+++ src/lib/libcurses/move.c Sun Jun 9 07:40:14 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: move.c,v 1.20 2019/05/20 22:17:41 blymn Exp $ */
+/* $NetBSD: move.c,v 1.21 2019/06/09 07:40:14 blymn Exp $ */
/*
* Copyright (c) 1981, 1993, 1994
@@ -34,7 +34,7 @@
#if 0
static char sccsid[] = "@(#)move.c 8.2 (Berkeley) 5/4/94";
#else
-__RCSID("$NetBSD: move.c,v 1.20 2019/05/20 22:17:41 blymn Exp $");
+__RCSID("$NetBSD: move.c,v 1.21 2019/06/09 07:40:14 blymn Exp $");
#endif
#endif /* not lint */
@@ -50,7 +50,7 @@ int
move(int y, int x)
{
- return _cursesi_wmove(stdscr, y, x, 1);
+ return wmove(stdscr, y, x);
}
#endif
@@ -62,21 +62,8 @@ move(int y, int x)
int
wmove(WINDOW *win, int y, int x)
{
- return _cursesi_wmove(win, y, x, 1);
-}
-
-
-/*
- * _cursesi_wmove:
- * Moves the cursor to the given point, if keep_old == 0 then
- * update the old cursor position.
- */
-int
-_cursesi_wmove(WINDOW *win, int y, int x, int keep_old)
-{
-
#ifdef DEBUG
- __CTRACE(__CTRACE_MISC, "_cursesi_wmove: (%d, %d), keep_old: %d\n", y, x, keep_old);
+ __CTRACE(__CTRACE_MISC, "wmove: (%d, %d)\n", y, x);
#endif
if (x < 0 || y < 0)
return ERR;
@@ -85,10 +72,6 @@ _cursesi_wmove(WINDOW *win, int y, int x
win->curx = x;
win->cury = y;
- if (keep_old == 0) {
- win->ocurx = x;
- win->ocury = y;
- }
return OK;
}
@@ -98,8 +81,8 @@ wcursyncup(WINDOW *win)
{
while (win->orig) {
- _cursesi_wmove(win->orig, win->cury + win->begy - win->orig->begy,
- win->curx + win->begx - win->orig->begx, 0);
+ wmove(win->orig, win->cury + win->begy - win->orig->begy,
+ win->curx + win->begx - win->orig->begx);
win = win->orig;
}
}
Index: src/lib/libcurses/addnstr.c
diff -u src/lib/libcurses/addnstr.c:1.16 src/lib/libcurses/addnstr.c:1.17
--- src/lib/libcurses/addnstr.c:1.16 Mon May 20 22:17:41 2019
+++ src/lib/libcurses/addnstr.c Sun Jun 9 07:40:14 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: addnstr.c,v 1.16 2019/05/20 22:17:41 blymn Exp $ */
+/* $NetBSD: addnstr.c,v 1.17 2019/06/09 07:40:14 blymn Exp $ */
/*
* Copyright (c) 1993, 1994
@@ -34,7 +34,7 @@
#if 0
static char sccsid[] = "@(#)addnstr.c 8.2 (Berkeley) 5/4/94";
#else
-__RCSID("$NetBSD: addnstr.c,v 1.16 2019/05/20 22:17:41 blymn Exp $");
+__RCSID("$NetBSD: addnstr.c,v 1.17 2019/06/09 07:40:14 blymn Exp $");
#endif
#endif /* not lint */
@@ -115,7 +115,7 @@ mvaddnstr(int y, int x, const char *str,
int
mvwaddnstr(WINDOW *win, int y, int x, const char *str, int count)
{
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return waddnstr(win, str, count);
Index: src/lib/libcurses/addwstr.c
diff -u src/lib/libcurses/addwstr.c:1.5 src/lib/libcurses/addwstr.c:1.6
--- src/lib/libcurses/addwstr.c:1.5 Mon May 20 22:17:41 2019
+++ src/lib/libcurses/addwstr.c Sun Jun 9 07:40:14 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: addwstr.c,v 1.5 2019/05/20 22:17:41 blymn Exp $ */
+/* $NetBSD: addwstr.c,v 1.6 2019/06/09 07:40:14 blymn Exp $ */
/*
* Copyright (c) 2005 The NetBSD Foundation Inc.
@@ -36,7 +36,7 @@
#include <sys/cdefs.h>
#ifndef lint
-__RCSID("$NetBSD: addwstr.c,v 1.5 2019/05/20 22:17:41 blymn Exp $");
+__RCSID("$NetBSD: addwstr.c,v 1.6 2019/06/09 07:40:14 blymn Exp $");
#endif /* not lint */
#include <string.h>
@@ -114,7 +114,7 @@ mvaddnwstr(int y, int x, const wchar_t *
int
mvwaddnwstr(WINDOW *win, int y, int x, const wchar_t *str, int count)
{
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return waddnwstr(win, str, count);
Index: src/lib/libcurses/copywin.c
diff -u src/lib/libcurses/copywin.c:1.18 src/lib/libcurses/copywin.c:1.19
--- src/lib/libcurses/copywin.c:1.18 Mon May 20 22:17:41 2019
+++ src/lib/libcurses/copywin.c Sun Jun 9 07:40:14 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: copywin.c,v 1.18 2019/05/20 22:17:41 blymn Exp $ */
+/* $NetBSD: copywin.c,v 1.19 2019/06/09 07:40:14 blymn Exp $ */
/*-
* Copyright (c) 1998-1999 Brett Lymn
@@ -31,7 +31,7 @@
#include <sys/cdefs.h>
#ifndef lint
-__RCSID("$NetBSD: copywin.c,v 1.18 2019/05/20 22:17:41 blymn Exp $");
+__RCSID("$NetBSD: copywin.c,v 1.19 2019/06/09 07:40:14 blymn Exp $");
#endif /* not lint */
#include <ctype.h>
@@ -119,7 +119,7 @@ int copywin(const WINDOW *srcwin, WINDOW
* background character
*/
if ((dooverlay && !isspace(sp->ch)) || !dooverlay) {
- _cursesi_wmove(dstwin, dminrow, dcol, 0);
+ wmove(dstwin, dminrow, dcol);
#ifdef DEBUG
__CTRACE(__CTRACE_WINDOW, "copywin: dcol = %d\n", dcol);
#endif
Index: src/lib/libcurses/curses_private.h
diff -u src/lib/libcurses/curses_private.h:1.70 src/lib/libcurses/curses_private.h:1.71
--- src/lib/libcurses/curses_private.h:1.70 Mon May 20 22:17:41 2019
+++ src/lib/libcurses/curses_private.h Sun Jun 9 07:40:14 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: curses_private.h,v 1.70 2019/05/20 22:17:41 blymn Exp $ */
+/* $NetBSD: curses_private.h,v 1.71 2019/06/09 07:40:14 blymn Exp $ */
/*-
* Copyright (c) 1998-2000 Brett Lymn
@@ -111,7 +111,6 @@ struct __window { /* Window structure.
struct __window *nextp, *orig; /* Subwindows list and parent. */
int begy, begx; /* Window home. */
int cury, curx; /* Current x, y coordinates. */
- int ocury, ocurx; /* Previous x, y coordinates. */
int maxy, maxx; /* Maximum values for curx, cury. */
int reqy, reqx; /* Size requested when created */
int ch_off; /* x offset for firstch/lastch. */
@@ -352,7 +351,6 @@ void _cursesi_reset_wacs(SCREEN *);
#endif /* HAVE_WCHAR */
void _cursesi_resetterm(SCREEN *);
int _cursesi_setterm(char *, SCREEN *);
-int _cursesi_wmove(WINDOW *, int, int, int);
int __delay(void);
unsigned int __hash_more(const void *, size_t, unsigned int);
#define __hash(s, len) __hash_more((s), (len), 0u)
Index: src/lib/libcurses/delch.c
diff -u src/lib/libcurses/delch.c:1.25 src/lib/libcurses/delch.c:1.26
--- src/lib/libcurses/delch.c:1.25 Mon May 20 22:17:41 2019
+++ src/lib/libcurses/delch.c Sun Jun 9 07:40:14 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: delch.c,v 1.25 2019/05/20 22:17:41 blymn Exp $ */
+/* $NetBSD: delch.c,v 1.26 2019/06/09 07:40:14 blymn Exp $ */
/*
* Copyright (c) 1981, 1993, 1994
@@ -34,7 +34,7 @@
#if 0
static char sccsid[] = "@(#)delch.c 8.2 (Berkeley) 5/4/94";
#else
-__RCSID("$NetBSD: delch.c,v 1.25 2019/05/20 22:17:41 blymn Exp $");
+__RCSID("$NetBSD: delch.c,v 1.26 2019/06/09 07:40:14 blymn Exp $");
#endif
#endif /* not lint */
@@ -72,7 +72,7 @@ mvdelch(int y, int x)
int
mvwdelch(WINDOW *win, int y, int x)
{
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return wdelch(win);
Index: src/lib/libcurses/scroll.c
diff -u src/lib/libcurses/scroll.c:1.25 src/lib/libcurses/scroll.c:1.26
--- src/lib/libcurses/scroll.c:1.25 Mon May 20 22:17:41 2019
+++ src/lib/libcurses/scroll.c Sun Jun 9 07:40:14 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: scroll.c,v 1.25 2019/05/20 22:17:41 blymn Exp $ */
+/* $NetBSD: scroll.c,v 1.26 2019/06/09 07:40:14 blymn Exp $ */
/*
* Copyright (c) 1981, 1993, 1994
@@ -34,7 +34,7 @@
#if 0
static char sccsid[] = "@(#)scroll.c 8.3 (Berkeley) 5/4/94";
#else
-__RCSID("$NetBSD: scroll.c,v 1.25 2019/05/20 22:17:41 blymn Exp $");
+__RCSID("$NetBSD: scroll.c,v 1.26 2019/06/09 07:40:14 blymn Exp $");
#endif
#endif /* not lint */
@@ -102,7 +102,7 @@ wscrl(WINDOW *win, int nlines)
#endif
wmove(win, win->scr_t, 1);
winsdelln(win, 0 - nlines);
- _cursesi_wmove(win, oy, ox, 1);
+ wmove(win, oy, ox);
if (win == curscr) {
__cputchar('\n');
Index: src/lib/libcurses/erase.c
diff -u src/lib/libcurses/erase.c:1.27 src/lib/libcurses/erase.c:1.28
--- src/lib/libcurses/erase.c:1.27 Mon May 20 22:17:41 2019
+++ src/lib/libcurses/erase.c Sun Jun 9 07:40:14 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: erase.c,v 1.27 2019/05/20 22:17:41 blymn Exp $ */
+/* $NetBSD: erase.c,v 1.28 2019/06/09 07:40:14 blymn Exp $ */
/*
* Copyright (c) 1981, 1993, 1994
@@ -34,7 +34,7 @@
#if 0
static char sccsid[] = "@(#)erase.c 8.2 (Berkeley) 5/4/94";
#else
-__RCSID("$NetBSD: erase.c,v 1.27 2019/05/20 22:17:41 blymn Exp $");
+__RCSID("$NetBSD: erase.c,v 1.28 2019/06/09 07:40:14 blymn Exp $");
#endif
#endif /* not lint */
@@ -105,6 +105,6 @@ werase(WINDOW *win)
* windows - this will result in the (intended) clearing of the
* screen over the area covered by the window. */
__touchwin(win);
- _cursesi_wmove(win, 0, 0, 0);
+ wmove(win, 0, 0);
return OK;
}
Index: src/lib/libcurses/get_wch.c
diff -u src/lib/libcurses/get_wch.c:1.22 src/lib/libcurses/get_wch.c:1.23
--- src/lib/libcurses/get_wch.c:1.22 Mon May 20 22:17:41 2019
+++ src/lib/libcurses/get_wch.c Sun Jun 9 07:40:14 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: get_wch.c,v 1.22 2019/05/20 22:17:41 blymn Exp $ */
+/* $NetBSD: get_wch.c,v 1.23 2019/06/09 07:40:14 blymn Exp $ */
/*
* Copyright (c) 2005 The NetBSD Foundation Inc.
@@ -36,7 +36,7 @@
#include <sys/cdefs.h>
#ifndef lint
-__RCSID("$NetBSD: get_wch.c,v 1.22 2019/05/20 22:17:41 blymn Exp $");
+__RCSID("$NetBSD: get_wch.c,v 1.23 2019/06/09 07:40:14 blymn Exp $");
#endif /* not lint */
#include <errno.h>
@@ -473,7 +473,7 @@ mvget_wch(int y, int x, wint_t *ch)
int
mvwget_wch(WINDOW *win, int y, int x, wint_t *ch)
{
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return wget_wch(win, ch);
@@ -608,7 +608,7 @@ wget_wch(WINDOW *win, wint_t *ch)
( inp == KEY_DC ||
inp == KEY_BACKSPACE ||
inp == KEY_LEFT )) {
- _cursesi_wmove( win, win->cury, win->curx - 1, 0 );
+ wmove( win, win->cury, win->curx - 1);
wdelch( win );
}
} else {
Index: src/lib/libcurses/getch.c
diff -u src/lib/libcurses/getch.c:1.72 src/lib/libcurses/getch.c:1.73
--- src/lib/libcurses/getch.c:1.72 Mon May 20 22:17:41 2019
+++ src/lib/libcurses/getch.c Sun Jun 9 07:40:14 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: getch.c,v 1.72 2019/05/20 22:17:41 blymn Exp $ */
+/* $NetBSD: getch.c,v 1.73 2019/06/09 07:40:14 blymn Exp $ */
/*
* Copyright (c) 1981, 1993, 1994
@@ -34,7 +34,7 @@
#if 0
static char sccsid[] = "@(#)getch.c 8.2 (Berkeley) 5/4/94";
#else
-__RCSID("$NetBSD: getch.c,v 1.72 2019/05/20 22:17:41 blymn Exp $");
+__RCSID("$NetBSD: getch.c,v 1.73 2019/06/09 07:40:14 blymn Exp $");
#endif
#endif /* not lint */
@@ -716,7 +716,7 @@ mvgetch(int y, int x)
int
mvwgetch(WINDOW *win, int y, int x)
{
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return wgetch(win);
@@ -821,24 +821,25 @@ wgetch(WINDOW *win)
if (is_wintouched(win))
wrefresh(win);
else {
- if ((win->ocury != win->cury) || (win->ocurx != win->curx)) {
+ if ((_cursesi_screen->curscr->cury != (win->begy + win->cury))
+ || (_cursesi_screen->curscr->curx != (win->begx + win->curx))) {
#ifdef DEBUG
- __CTRACE(__CTRACE_INPUT, "wgetch: ocury %d cury %d ocurx %d curx %d\n",
- win->ocury, win->cury, win->ocurx, win->curx);
+ __CTRACE(__CTRACE_INPUT, "wgetch: curscr cury %d cury %d curscr curx %d curx %d\n",
+ _cursesi_screen->curscr->cury, win->begy + win->cury,
+ _cursesi_screen->curscr->curx, win->begx + win->curx);
#endif
/*
* Just in case the window is not dirty but the
* cursor was moved, check and update the
* cursor location.
*/
- mvcur(win->ocury + win->begy, win->ocurx + win->begx,
- win->cury + win->begy, win->curx + win->begx);
+ mvcur(_cursesi_screen->curscr->cury,
+ _cursesi_screen->curscr->curx,
+ win->cury + win->begy, win->curx + win->begx);
_cursesi_screen->curscr->cury =
- win->cury + _cursesi_screen->curscr->begy;
+ win->cury + win->begy;
_cursesi_screen->curscr->curx =
- win->curx + _cursesi_screen->curscr->begx;
- win->ocurx = win->curx;
- win->ocury = win->cury;
+ win->curx + win->begx;
}
}
Index: src/lib/libcurses/getstr.c
diff -u src/lib/libcurses/getstr.c:1.26 src/lib/libcurses/getstr.c:1.27
--- src/lib/libcurses/getstr.c:1.26 Mon May 20 22:17:41 2019
+++ src/lib/libcurses/getstr.c Sun Jun 9 07:40:14 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: getstr.c,v 1.26 2019/05/20 22:17:41 blymn Exp $ */
+/* $NetBSD: getstr.c,v 1.27 2019/06/09 07:40:14 blymn Exp $ */
/*
* Copyright (c) 1981, 1993, 1994
@@ -35,7 +35,7 @@
#if 0
static char sccsid[] = "@(#)getstr.c 8.2 (Berkeley) 5/4/94";
#else
-__RCSID("$NetBSD: getstr.c,v 1.26 2019/05/20 22:17:41 blymn Exp $");
+__RCSID("$NetBSD: getstr.c,v 1.27 2019/06/09 07:40:14 blymn Exp $");
#endif
#endif /* not lint */
@@ -98,7 +98,7 @@ mvgetstr(int y, int x, char *str)
int
mvwgetnstr(WINDOW *win, int y, int x, char *str, int n)
{
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return wgetnstr(win, str, n);
@@ -113,7 +113,7 @@ __warn_references(mvgetstr,
int
mvwgetstr(WINDOW *win, int y, int x, char *str)
{
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return wgetstr(win, str);
@@ -188,7 +188,7 @@ __wgetnstr(WINDOW *win, char *str, int n
mvwaddch(win, win->cury,
xpos - 1, ' ');
if (win->curx > xpos - 1)
- _cursesi_wmove(win, win->cury, xpos - 1, 1);
+ wmove(win, win->cury, xpos - 1);
xpos--;
}
if (c == KEY_BACKSPACE || c == KEY_LEFT) {
@@ -198,7 +198,7 @@ __wgetnstr(WINDOW *win, char *str, int n
mvwaddch(win, win->cury, win->curx - 1,
' ');
if (win->curx > xpos)
- _cursesi_wmove(win, win->cury, xpos - 1, 1);
+ wmove(win, win->cury, xpos - 1);
xpos--;
}
str--;
@@ -211,7 +211,7 @@ __wgetnstr(WINDOW *win, char *str, int n
if (win->curx > oldx)
mvwaddch(win, win->cury, win->curx - 1,
' ');
- _cursesi_wmove(win, win->cury, oldx, 1);
+ wmove(win, win->cury, oldx);
xpos = oldx;
}
} else if (c == kc) {
@@ -223,22 +223,22 @@ __wgetnstr(WINDOW *win, char *str, int n
while (str != ostr) {
mvwaddch(win, win->cury, win->curx - 1,
' ');
- _cursesi_wmove(win, win->cury, win->curx - 1, 1);
+ wmove(win, win->cury, win->curx - 1);
str--;
if (n != -1)
/* We're counting chars */
remain++;
}
mvwaddch(win, win->cury, win->curx - 1, ' ');
- _cursesi_wmove(win, win->cury, win->curx - 1, 1);
+ wmove(win, win->cury, win->curx - 1);
} else
/* getch() displays the kill character */
mvwaddch(win, win->cury, oldx, ' ');
- _cursesi_wmove(win, win->cury, oldx, 1);
+ wmove(win, win->cury, oldx);
} else if (c >= KEY_MIN && c <= KEY_MAX) {
/* getch() displays these characters */
mvwaddch(win, win->cury, xpos, ' ');
- _cursesi_wmove(win, win->cury, xpos, 1);
+ wmove(win, win->cury, xpos);
} else {
if (remain) {
if (iscntrl((unsigned char)c))
@@ -248,7 +248,7 @@ __wgetnstr(WINDOW *win, char *str, int n
remain--;
} else
mvwaddch(win, win->cury, xpos, ' ');
- _cursesi_wmove(win, win->cury, xpos, 1);
+ wmove(win, win->cury, xpos);
}
}
Index: src/lib/libcurses/in_wch.c
diff -u src/lib/libcurses/in_wch.c:1.6 src/lib/libcurses/in_wch.c:1.7
--- src/lib/libcurses/in_wch.c:1.6 Mon May 20 22:17:41 2019
+++ src/lib/libcurses/in_wch.c Sun Jun 9 07:40:14 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: in_wch.c,v 1.6 2019/05/20 22:17:41 blymn Exp $ */
+/* $NetBSD: in_wch.c,v 1.7 2019/06/09 07:40:14 blymn Exp $ */
/*
* Copyright (c) 2005 The NetBSD Foundation Inc.
@@ -36,7 +36,7 @@
#include <sys/cdefs.h>
#ifndef lint
-__RCSID("$NetBSD: in_wch.c,v 1.6 2019/05/20 22:17:41 blymn Exp $");
+__RCSID("$NetBSD: in_wch.c,v 1.7 2019/06/09 07:40:14 blymn Exp $");
#endif /* not lint */
#include "curses.h"
@@ -69,7 +69,7 @@ mvin_wch(int y, int x, cchar_t *wcval)
int
mvwin_wch(WINDOW *win, int y, int x, cchar_t *wcval)
{
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return win_wch(win, wcval);
Index: src/lib/libcurses/insstr.c
diff -u src/lib/libcurses/insstr.c:1.6 src/lib/libcurses/insstr.c:1.7
--- src/lib/libcurses/insstr.c:1.6 Mon May 20 22:17:41 2019
+++ src/lib/libcurses/insstr.c Sun Jun 9 07:40:14 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: insstr.c,v 1.6 2019/05/20 22:17:41 blymn Exp $ */
+/* $NetBSD: insstr.c,v 1.7 2019/06/09 07:40:14 blymn Exp $ */
/*
* Copyright (c) 2005 The NetBSD Foundation Inc.
@@ -36,7 +36,7 @@
#include <sys/cdefs.h>
#ifndef lint
-__RCSID("$NetBSD: insstr.c,v 1.6 2019/05/20 22:17:41 blymn Exp $");
+__RCSID("$NetBSD: insstr.c,v 1.7 2019/06/09 07:40:14 blymn Exp $");
#endif /* not lint */
#include <string.h>
@@ -100,7 +100,7 @@ int
mvwinsstr(WINDOW *win, int y, int x, const char *str)
{
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return winsstr(stdscr, str);
@@ -114,7 +114,7 @@ int
mvwinsnstr(WINDOW *win, int y, int x, const char *str, int n)
{
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return winsnstr(stdscr, str, n);
Index: src/lib/libcurses/instr.c
diff -u src/lib/libcurses/instr.c:1.6 src/lib/libcurses/instr.c:1.7
--- src/lib/libcurses/instr.c:1.6 Mon May 20 22:17:41 2019
+++ src/lib/libcurses/instr.c Sun Jun 9 07:40:14 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: instr.c,v 1.6 2019/05/20 22:17:41 blymn Exp $ */
+/* $NetBSD: instr.c,v 1.7 2019/06/09 07:40:14 blymn Exp $ */
/*
* Copyright 2001 Wasabi Systems, Inc.
@@ -37,7 +37,7 @@
#include <sys/cdefs.h>
#ifndef lint
-__RCSID("$NetBSD: instr.c,v 1.6 2019/05/20 22:17:41 blymn Exp $");
+__RCSID("$NetBSD: instr.c,v 1.7 2019/06/09 07:40:14 blymn Exp $");
#endif /* not lint */
#include "curses.h"
@@ -92,7 +92,7 @@ __warn_references(mvwinstr,
int
mvwinstr(WINDOW *win, int y, int x, char *str)
{
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return winstr(win, str);
@@ -101,7 +101,7 @@ mvwinstr(WINDOW *win, int y, int x, char
int
mvwinnstr(WINDOW *win, int y, int x, char *str, int n)
{
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return winnstr(win, str, n);
Index: src/lib/libcurses/inch.c
diff -u src/lib/libcurses/inch.c:1.13 src/lib/libcurses/inch.c:1.14
--- src/lib/libcurses/inch.c:1.13 Mon May 20 22:17:41 2019
+++ src/lib/libcurses/inch.c Sun Jun 9 07:40:14 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: inch.c,v 1.13 2019/05/20 22:17:41 blymn Exp $ */
+/* $NetBSD: inch.c,v 1.14 2019/06/09 07:40:14 blymn Exp $ */
/*-
* Copyright (c) 1999 The NetBSD Foundation, Inc.
@@ -31,7 +31,7 @@
#include <sys/cdefs.h>
#ifndef lint
-__RCSID("$NetBSD: inch.c,v 1.13 2019/05/20 22:17:41 blymn Exp $");
+__RCSID("$NetBSD: inch.c,v 1.14 2019/06/09 07:40:14 blymn Exp $");
#endif /* not lint */
#include "curses.h"
@@ -69,7 +69,7 @@ chtype
mvwinch(WINDOW *win, int y, int x)
{
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return winch(win);
Index: src/lib/libcurses/ins_wch.c
diff -u src/lib/libcurses/ins_wch.c:1.13 src/lib/libcurses/ins_wch.c:1.14
--- src/lib/libcurses/ins_wch.c:1.13 Mon May 20 22:17:41 2019
+++ src/lib/libcurses/ins_wch.c Sun Jun 9 07:40:14 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: ins_wch.c,v 1.13 2019/05/20 22:17:41 blymn Exp $ */
+/* $NetBSD: ins_wch.c,v 1.14 2019/06/09 07:40:14 blymn Exp $ */
/*
* Copyright (c) 2005 The NetBSD Foundation Inc.
@@ -36,7 +36,7 @@
#include <sys/cdefs.h>
#ifndef lint
-__RCSID("$NetBSD: ins_wch.c,v 1.13 2019/05/20 22:17:41 blymn Exp $");
+__RCSID("$NetBSD: ins_wch.c,v 1.14 2019/06/09 07:40:14 blymn Exp $");
#endif /* not lint */
#include <string.h>
@@ -72,7 +72,7 @@ mvins_wch(int y, int x, const cchar_t *w
int
mvwins_wch(WINDOW *win, int y, int x, const cchar_t *wch)
{
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return wins_wch(stdscr, wch);
Index: src/lib/libcurses/ins_wstr.c
diff -u src/lib/libcurses/ins_wstr.c:1.13 src/lib/libcurses/ins_wstr.c:1.14
--- src/lib/libcurses/ins_wstr.c:1.13 Mon May 20 22:17:41 2019
+++ src/lib/libcurses/ins_wstr.c Sun Jun 9 07:40:14 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: ins_wstr.c,v 1.13 2019/05/20 22:17:41 blymn Exp $ */
+/* $NetBSD: ins_wstr.c,v 1.14 2019/06/09 07:40:14 blymn Exp $ */
/*
* Copyright (c) 2005 The NetBSD Foundation Inc.
@@ -36,7 +36,7 @@
#include <sys/cdefs.h>
#ifndef lint
-__RCSID("$NetBSD: ins_wstr.c,v 1.13 2019/05/20 22:17:41 blymn Exp $");
+__RCSID("$NetBSD: ins_wstr.c,v 1.14 2019/06/09 07:40:14 blymn Exp $");
#endif /* not lint */
#include <string.h>
@@ -93,7 +93,7 @@ mvins_nwstr(int y, int x, const wchar_t
int
mvwins_wstr(WINDOW *win, int y, int x, const wchar_t *wstr)
{
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return wins_wstr(stdscr, wstr);
@@ -106,7 +106,7 @@ mvwins_wstr(WINDOW *win, int y, int x, c
int
mvwins_nwstr(WINDOW *win, int y, int x, const wchar_t *wstr, int n)
{
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return wins_nwstr(stdscr, wstr, n);
Index: src/lib/libcurses/inchstr.c
diff -u src/lib/libcurses/inchstr.c:1.9 src/lib/libcurses/inchstr.c:1.10
--- src/lib/libcurses/inchstr.c:1.9 Mon May 20 22:17:41 2019
+++ src/lib/libcurses/inchstr.c Sun Jun 9 07:40:14 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: inchstr.c,v 1.9 2019/05/20 22:17:41 blymn Exp $ */
+/* $NetBSD: inchstr.c,v 1.10 2019/06/09 07:40:14 blymn Exp $ */
/*
* Copyright 2001 Wasabi Systems, Inc.
@@ -37,7 +37,7 @@
#include <sys/cdefs.h>
#ifndef lint
-__RCSID("$NetBSD: inchstr.c,v 1.9 2019/05/20 22:17:41 blymn Exp $");
+__RCSID("$NetBSD: inchstr.c,v 1.10 2019/06/09 07:40:14 blymn Exp $");
#endif /* not lint */
#include "curses.h"
@@ -95,7 +95,7 @@ int
mvwinchstr(WINDOW *win, int y, int x, chtype *chstr)
{
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return winchstr(win, chstr);
@@ -105,7 +105,7 @@ int
mvwinchnstr(WINDOW *win, int y, int x, chtype *chstr, int n)
{
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return winchnstr(win, chstr, n);
Index: src/lib/libcurses/insch.c
diff -u src/lib/libcurses/insch.c:1.24 src/lib/libcurses/insch.c:1.25
--- src/lib/libcurses/insch.c:1.24 Mon May 20 22:17:41 2019
+++ src/lib/libcurses/insch.c Sun Jun 9 07:40:14 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: insch.c,v 1.24 2019/05/20 22:17:41 blymn Exp $ */
+/* $NetBSD: insch.c,v 1.25 2019/06/09 07:40:14 blymn Exp $ */
/*
* Copyright (c) 1981, 1993, 1994
@@ -34,7 +34,7 @@
#if 0
static char sccsid[] = "@(#)insch.c 8.2 (Berkeley) 5/4/94";
#else
-__RCSID("$NetBSD: insch.c,v 1.24 2019/05/20 22:17:41 blymn Exp $");
+__RCSID("$NetBSD: insch.c,v 1.25 2019/06/09 07:40:14 blymn Exp $");
#endif
#endif /* not lint */
@@ -76,7 +76,7 @@ int
mvwinsch(WINDOW *win, int y, int x, chtype ch)
{
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return winsch(stdscr, ch);
@@ -126,7 +126,6 @@ winsch(WINDOW *win, chtype ch)
wrefresh(win);
scroll(win);
win->cury--;
- win->ocury = win->cury;
} else
return ERR;
}
Index: src/lib/libcurses/line.c
diff -u src/lib/libcurses/line.c:1.10 src/lib/libcurses/line.c:1.11
--- src/lib/libcurses/line.c:1.10 Mon May 20 22:17:41 2019
+++ src/lib/libcurses/line.c Sun Jun 9 07:40:14 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: line.c,v 1.10 2019/05/20 22:17:41 blymn Exp $ */
+/* $NetBSD: line.c,v 1.11 2019/06/09 07:40:14 blymn Exp $ */
/*-
* Copyright (c) 1998-1999 Brett Lymn
@@ -31,7 +31,7 @@
#include <sys/cdefs.h>
#ifndef lint
-__RCSID("$NetBSD: line.c,v 1.10 2019/05/20 22:17:41 blymn Exp $");
+__RCSID("$NetBSD: line.c,v 1.11 2019/06/09 07:40:14 blymn Exp $");
#endif /* not lint */
#include <string.h>
@@ -71,7 +71,7 @@ int
mvwhline(WINDOW *win, int y, int x, chtype ch, int count)
{
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return whline(win, ch, count);
@@ -97,7 +97,7 @@ whline(WINDOW *win, chtype ch, int count
for (i = 0; i < n; i++)
mvwaddch(win, win->cury, ocurx + i, ch);
- _cursesi_wmove(win, win->cury, ocurx, 1);
+ wmove(win, win->cury, ocurx);
return OK;
#else
cchar_t cch, *cchp;
@@ -143,7 +143,7 @@ int
mvwvline(WINDOW *win, int y, int x, chtype ch, int count)
{
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return wvline(win, ch, count);
@@ -170,7 +170,7 @@ wvline(WINDOW *win, chtype ch, int count
for (i = 0; i < n; i++)
mvwaddch(win, ocury + i, ocurx, ch);
- _cursesi_wmove(win, ocury, ocurx, 1);
+ wmove(win, ocury, ocurx);
return OK;
#else
cchar_t cch, *cchp;
@@ -208,7 +208,7 @@ int mvwhline_set(WINDOW *win, int y, int
#ifndef HAVE_WCHAR
return ERR;
#else
- if ( _cursesi_wmove( win, y , x , 0) == ERR )
+ if ( wmove( win, y , x ) == ERR )
return ERR;
return whline_set( win, wch, n );
@@ -245,7 +245,7 @@ int whline_set(WINDOW *win, const cchar_
mvwadd_wch(win, win->cury, ocurx + i * cw, &cc);
}
- _cursesi_wmove(win, win->cury, ocurx, 1);
+ wmove(win, win->cury, ocurx);
__sync(win);
return OK;
#endif /* HAVE_WCHAR */
@@ -274,7 +274,7 @@ int mvwvline_set(WINDOW *win, int y, int
#ifndef HAVE_WCHAR
return ERR;
#else
- if (_cursesi_wmove(win, y, x, 0) == ERR)
+ if (wmove(win, y, x) == ERR)
return ERR;
return wvline_set(win, wch, n);
@@ -307,7 +307,7 @@ int wvline_set(WINDOW *win, const cchar_
#endif /* DEBUG */
}
- _cursesi_wmove(win, ocury, ocurx, 1);
+ wmove(win, ocury, ocurx);
__sync(win);
return OK;
#endif /* HAVE_WCHAR */
Index: src/lib/libcurses/newwin.c
diff -u src/lib/libcurses/newwin.c:1.56 src/lib/libcurses/newwin.c:1.57
--- src/lib/libcurses/newwin.c:1.56 Mon May 20 22:17:41 2019
+++ src/lib/libcurses/newwin.c Sun Jun 9 07:40:14 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: newwin.c,v 1.56 2019/05/20 22:17:41 blymn Exp $ */
+/* $NetBSD: newwin.c,v 1.57 2019/06/09 07:40:14 blymn Exp $ */
/*
* Copyright (c) 1981, 1993, 1994
@@ -34,7 +34,7 @@
#if 0
static char sccsid[] = "@(#)newwin.c 8.3 (Berkeley) 7/27/94";
#else
-__RCSID("$NetBSD: newwin.c,v 1.56 2019/05/20 22:17:41 blymn Exp $");
+__RCSID("$NetBSD: newwin.c,v 1.57 2019/06/09 07:40:14 blymn Exp $");
#endif
#endif /* not lint */
@@ -375,7 +375,7 @@ __makenew(SCREEN *screen, int nlines, in
__CTRACE(__CTRACE_WINDOW, "makenew: ncols = %d\n", ncols);
#endif
win->screen = screen;
- win->cury = win->curx = win->ocurx = win->ocury = 0;
+ win->cury = win->curx = 0;
win->maxy = nlines;
win->maxx = ncols;
win->reqy = nlines;
Index: src/lib/libcurses/printw.c
diff -u src/lib/libcurses/printw.c:1.28 src/lib/libcurses/printw.c:1.29
--- src/lib/libcurses/printw.c:1.28 Mon May 20 22:17:41 2019
+++ src/lib/libcurses/printw.c Sun Jun 9 07:40:14 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: printw.c,v 1.28 2019/05/20 22:17:41 blymn Exp $ */
+/* $NetBSD: printw.c,v 1.29 2019/06/09 07:40:14 blymn Exp $ */
/*
* Copyright (c) 1981, 1993, 1994
@@ -34,7 +34,7 @@
#if 0
static char sccsid[] = "@(#)printw.c 8.3 (Berkeley) 5/4/94";
#else
-__RCSID("$NetBSD: printw.c,v 1.28 2019/05/20 22:17:41 blymn Exp $");
+__RCSID("$NetBSD: printw.c,v 1.29 2019/06/09 07:40:14 blymn Exp $");
#endif
#endif /* not lint */
@@ -102,7 +102,7 @@ mvwprintw(WINDOW * win, int y, int x, co
va_list ap;
int ret;
- if (_cursesi_wmove(win, y, x, 0) != OK)
+ if (wmove(win, y, x) != OK)
return ERR;
va_start(ap, fmt);
Index: src/lib/libcurses/refresh.c
diff -u src/lib/libcurses/refresh.c:1.110 src/lib/libcurses/refresh.c:1.111
--- src/lib/libcurses/refresh.c:1.110 Mon May 20 22:17:41 2019
+++ src/lib/libcurses/refresh.c Sun Jun 9 07:40:14 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: refresh.c,v 1.110 2019/05/20 22:17:41 blymn Exp $ */
+/* $NetBSD: refresh.c,v 1.111 2019/06/09 07:40:14 blymn 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.110 2019/05/20 22:17:41 blymn Exp $");
+__RCSID("$NetBSD: refresh.c,v 1.111 2019/06/09 07:40:14 blymn Exp $");
#endif
#endif /* not lint */
@@ -270,7 +270,8 @@ _wnoutrefresh(WINDOW *win, int begy, int
continue;
#ifdef DEBUG
__CTRACE(__CTRACE_REFRESH,
- "_wnoutrefresh: line is dirty\n");
+ "_wnoutrefresh: line y_off %d (dy_off %d) is dirty\n",
+ y_off, dy_off);
#endif
wlp = swin->alines[wy];
@@ -1435,8 +1436,8 @@ domvcur(WINDOW *win, int oy, int ox, int
{
#ifdef DEBUG
- __CTRACE(__CTRACE_REFRESH, "domvcur: (%x,%d)=>(%d,%d)\n",
- oy, ox, ny, nx );
+ __CTRACE(__CTRACE_REFRESH, "domvcur: (%d,%d)=>(%d,%d) win 0x%p\n",
+ oy, ox, ny, nx, win );
#endif /* DEBUG */
__unsetattr(1);
@@ -1452,10 +1453,6 @@ domvcur(WINDOW *win, int oy, int ox, int
win->alines[oy]->flags &= ~__ISPASTEOL;
win->alines[ny]->flags &= ~__ISPASTEOL;
- /* Update old cursor positions to current location */
- win->ocury = ny;
- win->ocurx = nx;
-
__mvcur(oy, ox, ny, nx, 1);
}