mirror of
https://github.com/mruby/mruby
synced 2026-06-08 16:11:16 +00:00
parse_args should return either EXIT_SUCCESS or EXIT_FAILURE
This commit is contained in:
+3
-5
@@ -178,13 +178,11 @@ parse_args(mrb_state *mrb, int argc, char **argv, struct _args *args)
|
||||
mrb_show_copyright(mrb);
|
||||
exit(EXIT_SUCCESS);
|
||||
}
|
||||
else return -3;
|
||||
default:
|
||||
return -4;
|
||||
return EXIT_FAILURE;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
return EXIT_SUCCESS;
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -240,7 +238,7 @@ main(int argc, char **argv)
|
||||
}
|
||||
|
||||
n = parse_args(mrb, argc, argv, &args);
|
||||
if (n < 0) {
|
||||
if (n == EXIT_FAILURE) {
|
||||
cleanup(mrb, &args);
|
||||
usage(argv[0]);
|
||||
return n;
|
||||
|
||||
+7
-7
@@ -69,7 +69,7 @@ parse_args(mrb_state *mrb, int argc, char **argv, struct _args *args)
|
||||
char *infile = NULL;
|
||||
char *outfile = NULL;
|
||||
char **origargv = argv;
|
||||
int result = 0;
|
||||
int result = EXIT_SUCCESS;
|
||||
static const struct _args args_zero = { 0 };
|
||||
|
||||
*args = args_zero;
|
||||
@@ -88,7 +88,7 @@ parse_args(mrb_state *mrb, int argc, char **argv, struct _args *args)
|
||||
if (outfile) {
|
||||
printf("%s: An output file is already specified. (%s)\n",
|
||||
*origargv, outfile);
|
||||
result = -5;
|
||||
result = EXIT_FAILURE;
|
||||
goto exit;
|
||||
}
|
||||
outfile = get_outfilename((*argv) + 2, "");
|
||||
@@ -98,7 +98,7 @@ parse_args(mrb_state *mrb, int argc, char **argv, struct _args *args)
|
||||
args->initname = (*argv) + 2;
|
||||
if (*args->initname == '\0') {
|
||||
printf("%s: Function name is not specified.\n", *origargv);
|
||||
result = -2;
|
||||
result = EXIT_FAILURE;
|
||||
goto exit;
|
||||
}
|
||||
break;
|
||||
@@ -125,7 +125,7 @@ parse_args(mrb_state *mrb, int argc, char **argv, struct _args *args)
|
||||
mrb_show_copyright(mrb);
|
||||
exit(EXIT_SUCCESS);
|
||||
}
|
||||
result = -3;
|
||||
result = EXIT_FAILURE;
|
||||
goto exit;
|
||||
default:
|
||||
break;
|
||||
@@ -141,7 +141,7 @@ parse_args(mrb_state *mrb, int argc, char **argv, struct _args *args)
|
||||
}
|
||||
|
||||
if (infile == NULL) {
|
||||
result = -4;
|
||||
result = EXIT_FAILURE;
|
||||
goto exit;
|
||||
}
|
||||
if (!args->check_syntax) {
|
||||
@@ -158,7 +158,7 @@ parse_args(mrb_state *mrb, int argc, char **argv, struct _args *args)
|
||||
}
|
||||
else if ((args->wfp = fopen(outfile, "wb")) == NULL) {
|
||||
printf("%s: Cannot open output file. (%s)\n", *origargv, outfile);
|
||||
result = -1;
|
||||
result = EXIT_FAILURE;
|
||||
goto exit;
|
||||
}
|
||||
}
|
||||
@@ -192,7 +192,7 @@ main(int argc, char **argv)
|
||||
}
|
||||
|
||||
n = parse_args(mrb, argc, argv, &args);
|
||||
if (n < 0 || args.rfp == NULL) {
|
||||
if (n == EXIT_FAILURE || args.rfp == NULL) {
|
||||
cleanup(mrb, &args);
|
||||
usage(argv[0]);
|
||||
return n;
|
||||
|
||||
+4
-5
@@ -105,7 +105,7 @@ append_cmdline:
|
||||
}
|
||||
else {
|
||||
printf("%s: No code specified for -e\n", *origargv);
|
||||
return 0;
|
||||
return EXIT_SUCCESS;
|
||||
}
|
||||
break;
|
||||
case 'v':
|
||||
@@ -125,9 +125,8 @@ append_cmdline:
|
||||
mrb_show_copyright(mrb);
|
||||
exit(EXIT_SUCCESS);
|
||||
}
|
||||
else return -3;
|
||||
default:
|
||||
return -4;
|
||||
return EXIT_FAILURE;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -148,7 +147,7 @@ append_cmdline:
|
||||
memcpy(args->argv, argv, (argc+1) * sizeof(char*));
|
||||
args->argc = argc;
|
||||
|
||||
return 0;
|
||||
return EXIT_SUCCESS;
|
||||
}
|
||||
|
||||
static void
|
||||
@@ -240,7 +239,7 @@ main(int argc, char **argv)
|
||||
}
|
||||
|
||||
n = parse_args(mrb, argc, argv, &args);
|
||||
if (n < 0 || (args.cmdline == NULL && args.rfp == NULL)) {
|
||||
if (n == EXIT_FAILURE || (args.cmdline == NULL && args.rfp == NULL)) {
|
||||
cleanup(mrb, &args);
|
||||
usage(argv[0]);
|
||||
return n;
|
||||
|
||||
Reference in New Issue
Block a user