Ignore special keys returned by the curses getch() function.
authormillert <millert@openbsd.org>
Thu, 21 Jan 2021 20:08:17 +0000 (20:08 +0000)
committermillert <millert@openbsd.org>
Thu, 21 Jan 2021 20:08:17 +0000 (20:08 +0000)
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@

games/canfield/canfield/canfield.c

index df81b14..346fd20 100644 (file)
@@ -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') {