summaryrefslogtreecommitdiff
path: root/games/sms_sdl/patches/fix_option_parsing.diff
diff options
context:
space:
mode:
Diffstat (limited to 'games/sms_sdl/patches/fix_option_parsing.diff')
-rw-r--r--games/sms_sdl/patches/fix_option_parsing.diff83
1 files changed, 0 insertions, 83 deletions
diff --git a/games/sms_sdl/patches/fix_option_parsing.diff b/games/sms_sdl/patches/fix_option_parsing.diff
deleted file mode 100644
index ee91ec487d..0000000000
--- a/games/sms_sdl/patches/fix_option_parsing.diff
+++ /dev/null
@@ -1,83 +0,0 @@
-diff -x tags -Naur sms_sdl-0.9.4a-r7.1/sdl/main.c sms_sdl-0.9.4a-r7.1.patched/sdl/main.c
---- sms_sdl-0.9.4a-r7.1/sdl/main.c 2009-10-11 21:49:18.000000000 -0400
-+++ sms_sdl-0.9.4a-r7.1.patched/sdl/main.c 2009-10-12 01:41:24.000000000 -0400
-@@ -42,17 +42,20 @@
-
- static int parse_args(int argc, char **argv)
- {
-- int i;
-+ int i, name_set = 0;
-
- /* default virtual console emulation settings */
- cfg.fm = 0;
- cfg.japan = 0;
-
- cfg.filter = -1;
-- strcpy(cfg.game_name, argv[1]);
-
-- for(i = 2; i < argc; ++i) {
-- if(strcasecmp(argv[i], "--fm") == 0)
-+ for(i = 1; i < argc; ++i) {
-+ if(!name_set && argv[i][0] != '-') {
-+ strcpy(cfg.game_name, argv[i]);
-+ name_set++;
-+ }
-+ else if(strcasecmp(argv[i], "--fm") == 0)
- cfg.fm = 1;
- else if(strcasecmp(argv[i], "--japan") == 0)
- cfg.japan = 1;
-@@ -86,6 +89,11 @@
- else
- printf("WARNING: unknown option '%s'.\n", argv[i]);
- }
-+ if(!name_set) {
-+ printf("ERROR: no ROM filename given\n");
-+ return 0;
-+ }
-+
- return 1;
- }
-
-@@ -112,13 +120,13 @@
- printf(" --filter <mode>\t render using a filter: ");
- for(i = 0; i < sizeof(filters) / sizeof(filters[0]) - 1; ++i)
- printf("%s,", filters[i].name);
-- printf("%s.", filters[i].name);
-+ printf("%s.\n", filters[i].name);
- return 1;
- }
-
- memset(&cfg, 0, sizeof(cfg));
- if(!parse_args(argc, argv))
-- return 0;
-+ return 1;
-
- if(sdlsms_init(&cfg)) {
- sdlsms_emulate();
-diff -x tags -Naur sms_sdl-0.9.4a-r7.1/sdl/saves.c sms_sdl-0.9.4a-r7.1.patched/sdl/saves.c
---- sms_sdl-0.9.4a-r7.1/sdl/saves.c 2003-07-16 23:20:24.000000000 -0400
-+++ sms_sdl-0.9.4a-r7.1.patched/sdl/saves.c 2009-10-11 22:04:10.000000000 -0400
-@@ -88,6 +88,11 @@
- unzCloseCurrentFile(zf);
- unzClose(zf);
-
-+ /* 20091011 bkw: avoid segfaulting if filename contains no dot */
-+ if(!strrchr(romfile, '.')) {
-+ printf("Invalid filename '%s' (no extension), giving up\n", romfile);
-+ return 0;
-+ }
- if(strcasecmp(strrchr(romfile, '.'), ".gg") == 0)
- cart.type = TYPE_GG;
- else
-@@ -126,6 +131,11 @@
-
- fclose(fd);
-
-+ /* 20091011 bkw: avoid segfaulting if filename contains no dot */
-+ if(!strrchr(filename, '.')) {
-+ printf("Invalid filename '%s' (no extension), giving up\n", filename);
-+ return 0;
-+ }
- /* Figure out game image type */
- if(strcasecmp(strrchr(filename, '.'), ".gg") == 0)
- cart.type = TYPE_GG;