diff options
author | nicm <nicm> | 2023-01-08 23:34:46 +0000 |
---|---|---|
committer | nicm <nicm> | 2023-01-08 23:34:46 +0000 |
commit | 565de3f54b37a955c15ae26db40aaaa76f71d02e (patch) | |
tree | abe8a426e8adc4456678dc276d51a9f59fb026ae | |
parent | 7c0789d2d2721b70e04fe6a589f644797d2b5e1f (diff) | |
download | rtmux-565de3f54b37a955c15ae26db40aaaa76f71d02e.tar.gz rtmux-565de3f54b37a955c15ae26db40aaaa76f71d02e.tar.bz2 rtmux-565de3f54b37a955c15ae26db40aaaa76f71d02e.zip |
Fix parsing of optional arguments so that and accept a - starting an
argument.
-rw-r--r-- | arguments.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/arguments.c b/arguments.c index 47ca17ce..326fad17 100644 --- a/arguments.c +++ b/arguments.c @@ -150,8 +150,6 @@ args_parse_flag_argument(struct args_value *values, u_int count, char **cause, xasprintf(cause, "-%c argument must be a string", flag); return (-1); } - if (argument->string[0] == '-') - argument = NULL; } if (argument == NULL) { if (optional_argument) { @@ -210,12 +208,12 @@ args_parse_flags(const struct args_parse *parse, struct args_value *values, xasprintf(cause, "unknown flag -%c", flag); return (-1); } - if (*++found != ':') { + if (found[1] != ':') { log_debug("%s: -%c", __func__, flag); args_set(args, flag, NULL, 0); continue; } - optional_argument = (*found == ':'); + optional_argument = (found[2] == ':'); return (args_parse_flag_argument(values, count, cause, args, i, string, flag, optional_argument)); } |