summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--tools/mruby/mruby.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/tools/mruby/mruby.c b/tools/mruby/mruby.c
index 3a234d22e..8336089ee 100644
--- a/tools/mruby/mruby.c
+++ b/tools/mruby/mruby.c
@@ -61,13 +61,15 @@ parse_args(mrb_state *mrb, int argc, char **argv, struct _args *args)
memset(args, 0, sizeof(*args));
if (argc == 1) return -2;
-
for (argc--,argv++; argc > 0; argc--,argv++) {
char *item;
if (argv[0][0] != '-') break;
- if (strlen(*argv) <= 1)
- return -1;
+ if (strlen(*argv) <= 1) {
+ argc--; argv++;
+ args->rfp = stdin;
+ break;
+ }
item = argv[0] + 1;
switch (*item++) {
@@ -127,7 +129,6 @@ append_cmdline:
}
}
-
if (args->rfp == NULL && args->cmdline == NULL) {
if (*argv == NULL) args->rfp = stdin;
else if ((args->rfp = fopen(*argv, args->mrbfile ? "rb" : "r")) == NULL) {