diff options
author | Yaroslav de la Peña Smirnov <yps@yaroslavps.com> | 2025-09-13 01:30:01 +0300 |
---|---|---|
committer | Yaroslav de la Peña Smirnov <yps@yaroslavps.com> | 2025-09-13 01:30:01 +0300 |
commit | 8c73413201a720dd24451b468155069f954dfd35 (patch) | |
tree | fd42c80b4e17bb5b69a5a2a537bf8515a33b2c95 /cli | |
parent | 0a770cbaf0c9509415e6dabf880bf75d25a02606 (diff) | |
download | c-wares-8c73413201a720dd24451b468155069f954dfd35.tar.gz c-wares-8c73413201a720dd24451b468155069f954dfd35.zip |
cli: minor bug fixes and improvments
Diffstat (limited to 'cli')
-rw-r--r-- | cli/cli-opts.h | 2 | ||||
-rw-r--r-- | cli/cli.h | 7 |
2 files changed, 6 insertions, 3 deletions
diff --git a/cli/cli-opts.h b/cli/cli-opts.h index 4a94bcc..2266230 100644 --- a/cli/cli-opts.h +++ b/cli/cli-opts.h @@ -71,7 +71,7 @@ int cli_opt_data_size_set(struct cli_opt *self, const char *val) invalid: fprintf(stderr, "invalid value \"%s\", expected a number optionally followed " - "by a multiplicative suffix (K, M, G, T).", + "by a multiplicative suffix (K, M, G, T).\n", val); return CLI_RC_ERR; } @@ -431,8 +431,11 @@ static int parse_options(struct cli_ctx *ctx) return CLI_RC_OK; if (key[1] == '-') { /* Everything after '--' are non-option arguments */ - if (key[2] == '\0') + if (key[2] == '\0') { + ctx->argc--; + ctx->argv++; return CLI_RC_OK; + } int rc = parse_long(ctx); if (rc != CLI_RC_OK) @@ -520,7 +523,7 @@ static int cli_run(struct cli *const cli, int argc, char *argv[]) ctx.argv++; rc = cli_cmd_run(cli, cmd, &ctx); - goto out; + return rc; } } rc = CLI_RC_BAD_ARGS; |