diff options
Diffstat (limited to 'clients/cli/utils.c')
-rw-r--r-- | clients/cli/utils.c | 27 |
1 files changed, 17 insertions, 10 deletions
diff --git a/clients/cli/utils.c b/clients/cli/utils.c index 67d5a742a0..61aa0a629a 100644 --- a/clients/cli/utils.c +++ b/clients/cli/utils.c @@ -154,7 +154,7 @@ parse_global_arg (NmCli *nmc, const char *arg) * -1 otherwise (no more args). */ int -next_arg (NmCli *nmc, int *argc, char ***argv, ...) +next_arg (NmCli *nmc, int *argc, const char *const**argv, ...) { va_list args; const char *cmd_option; @@ -164,20 +164,20 @@ next_arg (NmCli *nmc, int *argc, char ***argv, ...) do { int cmd_option_pos = 1; - if (*argc > 0) { - (*argc)--; - (*argv)++; - } + if (*argc > 0) + arg_move_next (argc, argv); if (*argc == 0) return -1; va_start (args, argv); - if (nmc && nmc->complete && *argc == 1) { + if ( nmc + && nmc->complete + && *argc == 1) { while ((cmd_option = va_arg (args, const char *))) nmc_complete_strings (**argv, cmd_option); - if (***argv == '-') + if ((**argv)[0] == '-') nmc_complete_strings (**argv, "--ask", "--show-secrets"); va_end (args); @@ -248,7 +248,11 @@ nmc_arg_is_option (const char *str, const char *opt_name) * Returns: TRUE on success, FALSE on an error and sets 'error' */ gboolean -nmc_parse_args (nmc_arg_t *arg_arr, gboolean last, int *argc, char ***argv, GError **error) +nmc_parse_args (nmc_arg_t *arg_arr, + gboolean last, + int *argc, + const char *const**argv, + GError **error) { nmc_arg_t *p; gboolean found; @@ -483,8 +487,11 @@ nmc_get_user_input (const char *ask_str) * Split string in 'line' according to 'delim' to (argument) array. */ int -nmc_string_to_arg_array (const char *line, const char *delim, gboolean unquote, - char ***argv, int *argc) +nmc_string_to_arg_array (const char *line, + const char *delim, + gboolean unquote, + char ***argv, + int *argc) { gs_free const char **arr0 = NULL; char **arr; |