]> granicus.if.org Git - nethack/commitdiff
Fix BIND segfault
authorPasi Kallinen <paxed@alt.org>
Fri, 5 Feb 2021 09:14:11 +0000 (11:14 +0200)
committerPasi Kallinen <paxed@alt.org>
Fri, 5 Feb 2021 09:14:14 +0000 (11:14 +0200)
Recent commit that added terminator entry to default_menu_cmd_info
caused a segfault when trying to BIND keys.

src/options.c

index 0f28c5829961a13832922e448b95eba9b26f1e05..bd27dd1666f3c251003ea44f7ed34f44a64a105f 100644 (file)
@@ -487,7 +487,7 @@ check_misc_menu_command(char *opts, char *op UNUSED)
     const char *name_to_check;
 
     /* check for menu command mapping */
-    for (i = 0; i < SIZE(default_menu_cmd_info); i++) {
+    for (i = 0; default_menu_cmd_info[i].name; i++) {
         name_to_check = default_menu_cmd_info[i].name;
         if (match_optname(opts, name_to_check,
                           (int) strlen(name_to_check), TRUE))
@@ -6021,7 +6021,7 @@ parsebindings(char *bindings)
         return TRUE;
 
     /* is it a menu command? */
-    for (i = 0; i < SIZE(default_menu_cmd_info); i++) {
+    for (i = 0; default_menu_cmd_info[i].name; i++) {
         if (!strcmp(default_menu_cmd_info[i].name, bind)) {
             if (illegal_menu_cmd_key(key)) {
                 config_error_add("Bad menu key %s:%s", visctrl(key), bind);