diff options
| author | Yukihiro Matsumoto <[email protected]> | 2012-08-15 09:31:13 +0900 |
|---|---|---|
| committer | Yukihiro Matsumoto <[email protected]> | 2012-08-15 09:31:13 +0900 |
| commit | 5f11890d0488319ddbe8978d33acad52f2410ced (patch) | |
| tree | 117436db14bdf18875fd5ceb6e1b359e1855a971 | |
| parent | d648970bc8503b15b1e26c48668f023e3dea3c1c (diff) | |
| download | mruby-5f11890d0488319ddbe8978d33acad52f2410ced.tar.gz mruby-5f11890d0488319ddbe8978d33acad52f2410ced.zip | |
mruby should accept "-" as stdin
| -rw-r--r-- | tools/mruby/mruby.c | 9 |
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) { |
