parse_args should return either EXIT_SUCCESS or EXIT_FAILURE

parent e72ac2c6
......@@ -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;
......
......@@ -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;
......
......@@ -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;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment