summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Johnson <peter@tortall.net>2015-11-06 02:43:29 -0800
committerPeter Johnson <peter@tortall.net>2015-11-06 02:43:29 -0800
commit19a29bfca1925953558967ae7406ba26d7a345a4 (patch)
tree8a0029a28641e6903d266a53b4f79410dc0655aa
parent37330617445f114eea0ffc47406636638187e76c (diff)
parent8fd3d4d95e565a27657092f5bb678815375fcfb5 (diff)
downloadyasm-19a29bfca1925953558967ae7406ba26d7a345a4.tar.gz
Merge pull request #74 from darealshinji/patch-1
fixing an argument parsing bug in ytasm
-rw-r--r--frontends/tasm/tasm-options.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/frontends/tasm/tasm-options.c b/frontends/tasm/tasm-options.c
index 57c3bdfd..3d40f31b 100644
--- a/frontends/tasm/tasm-options.c
+++ b/frontends/tasm/tasm-options.c
@@ -65,15 +65,18 @@ parse_cmdline(int argc, char **argv, opt_option *options, size_t nopts,
param = &argv[0][1+len];
if (options[i].takes_param) {
- if (param[0] == '\0') {
+ if (param[0] != '\0') {
+ /* do nothing */
+ } else if (argc > 1) {
+ param = argv[1];
+ argc--;
+ argv++;
+ } else {
print_error(
- _("option `-%c' needs an argument!"),
+ _("option `-%s' needs an argument!"),
options[i].opt);
errors++;
goto fail;
- } else {
- argc--;
- argv++;
}
} else
param = NULL;