summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormillert <millert@openbsd.org>2021-01-21 20:08:17 +0000
committermillert <millert@openbsd.org>2021-01-21 20:08:17 +0000
commita6d654780e890044fa9039fcb66911f9e2e558d9 (patch)
treeae2c9a5f11fd69aa09b08724dccecaa43472f436
parentndp only deals with current localtime. Print time with subsecond (diff)
downloadwireguard-openbsd-a6d654780e890044fa9039fcb66911f9e2e558d9.tar.xz
wireguard-openbsd-a6d654780e890044fa9039fcb66911f9e2e558d9.zip
Ignore special keys returned by the curses getch() function.
Prevents canfield from suspending itself when you resize the window. Canfield is not prepared to deal with anything other than normal characters so just ignore them. OK tb@ pjanzen@
-rw-r--r--games/canfield/canfield/canfield.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/games/canfield/canfield/canfield.c b/games/canfield/canfield/canfield.c
index df81b14f517..346fd20a1d2 100644
--- a/games/canfield/canfield/canfield.c
+++ b/games/canfield/canfield/canfield.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: canfield.c,v 1.28 2018/08/24 11:14:49 mestre Exp $ */
+/* $OpenBSD: canfield.c,v 1.29 2021/01/21 20:08:17 millert Exp $ */
/* $NetBSD: canfield.c,v 1.7 1995/05/13 07:28:35 jtc Exp $ */
/*
@@ -1332,7 +1332,8 @@ getcmd(int row, int col, const char *cp)
do {
if ((ch = getch()) == ERR)
cleanup(0);
- ch &= 0177;
+ if (ch >= KEY_MIN)
+ continue;
if (ch >= 'A' && ch <= 'Z')
ch += ('a' - 'A');
if (ch == '\f') {