diff options
| author | Jan Sucan <jan@jansucan.com> | 2023-12-13 18:47:06 +0100 |
|---|---|---|
| committer | Jan Sucan <jan@jansucan.com> | 2023-12-13 18:47:06 +0100 |
| commit | 82adeccf84f132e0f259dc603db3ecf26a35b36a (patch) | |
| tree | bda9998d6ca6d19fb2737117ea47d808d90341ac /src/options.cpp | |
| parent | 9549779332eeb13db34c7c86bc468ecc60350bf8 (diff) | |
Refactor getting items from argv to resolve cppcheck errors
The cppcheck errors were:
The address of local variable 'argv' is accessed at non-zero index.
Diffstat (limited to 'src/options.cpp')
| -rw-r--r-- | src/options.cpp | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/src/options.cpp b/src/options.cpp index 5de577e..632076a 100644 --- a/src/options.cpp +++ b/src/options.cpp @@ -57,6 +57,7 @@ static bool options_parse_backup(int *const argc, char ***const argv, options_t *const opts); static bool options_parse_restore(int *const argc, char ***const argv, options_t *const opts); +static const char *const next_arg(char ***const argv); bool options_parse(int argc, char **argv, options_t *const opts) @@ -233,9 +234,9 @@ options_parse_backup(int *const argc, char ***const argv, options_t *const opts) } else { opts->op.backup.sector_size = common_opts.sector_size; opts->op.backup.buffer_size = common_opts.buffer_size; - opts->op.backup.in_file_path = (*argv)[0]; - opts->op.backup.ref_file_path = (*argv)[1]; - opts->op.backup.out_file_path = (*argv)[2]; + opts->op.backup.in_file_path = next_arg(argv); + opts->op.backup.ref_file_path = next_arg(argv); + opts->op.backup.out_file_path = next_arg(argv); } return true; @@ -262,9 +263,17 @@ options_parse_restore(int *const argc, char ***const argv, } else { opts->op.restore.sector_size = common_opts.sector_size; opts->op.restore.buffer_size = common_opts.buffer_size; - opts->op.restore.in_file_path = (*argv)[0]; - opts->op.restore.out_file_path = (*argv)[1]; + opts->op.restore.in_file_path = next_arg(argv); + opts->op.restore.out_file_path = next_arg(argv); } return true; } + +static const char *const +next_arg(char ***const argv) +{ + const char *arg = **argv; + ++(*argv); + return arg; +} |
