@@ -615,6 +615,10 @@ static void parse_args(int argc, char *argv[])
615615 }
616616
617617 if (! strcasecmp (argv[ i ], " --test-depth" ) || ! strcasecmp (argv[ i ], " -test-depth" )) {
618+ if (i == argc - 1 ) {
619+ usage ();
620+ DIE (" Missing parameter for argument, %s" , argv[ i ]);
621+ }
618622 g_opt_test_level_start = true ;
619623 g_opt_test_skip_main_menu = true ;
620624 g_opt_test_level_start_depth = std::stoi (argv[ i + 1 ]);
@@ -635,6 +639,10 @@ static void parse_args(int argc, char *argv[])
635639 }
636640
637641 if (! strcasecmp (argv[ i ], " --seed" ) || ! strcasecmp (argv[ i ], " -seed" )) {
642+ if (i == argc - 1 ) {
643+ usage ();
644+ DIE (" Missing parameter for argument, %s" , argv[ i ]);
645+ }
638646 g_opt_seed_name = argv[ i + 1 ];
639647 seed_manually_set = true ;
640648 i++;
@@ -643,6 +651,10 @@ static void parse_args(int argc, char *argv[])
643651
644652 if (! strcasecmp (argv[ i ], " --player-name" ) || ! strcasecmp (argv[ i ], " -player-name" )
645653 || ! strcasecmp (argv[ i ], " --playername" ) || ! strcasecmp (argv[ i ], " -playername" )) {
654+ if (i == argc - 1 ) {
655+ usage ();
656+ DIE (" Missing parameter for argument, %s" , argv[ i ]);
657+ }
646658 g_opt_player_name = argv[ i + 1 ];
647659 i++;
648660 continue ;
0 commit comments