From 3fd9bf9d7d9fc0290fd25f709b60a3a8f5c7e334 Mon Sep 17 00:00:00 2001 From: Lubomir Rintel Date: Thu, 24 May 2018 17:57:55 +0200 Subject: clients: fix an error message in case of property ambiguity Before: $ nmcli c modify Dukkha ipv4.ignore no Error: invalid property 'ignore': 'ignore' is ambiguous (ignore-auto-routes x (null)). After: $ nmcli c modify Dukkha ipv4.ignore no Error: invalid property 'ignore': 'ignore' is ambiguous (ignore-auto-routes x ignore-auto-dns). --- clients/common/nm-client-utils.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/clients/common/nm-client-utils.c b/clients/common/nm-client-utils.c index f683c7ce81..257053093e 100644 --- a/clients/common/nm-client-utils.c +++ b/clients/common/nm-client-utils.c @@ -175,7 +175,8 @@ nmc_string_is_valid (const char *input, const char **allowed, GError **error) { const char **p; size_t input_ln, p_len; - gboolean prev_match = FALSE, ambiguous = FALSE; + gboolean ambiguous = FALSE; + const char *prev_match = NULL; const char *ret = NULL; g_return_val_if_fail (error == NULL || *error == NULL, NULL); @@ -193,15 +194,16 @@ nmc_string_is_valid (const char *input, const char **allowed, GError **error) break; } if (!prev_match) { + prev_match = *p; + } else { ret = *p; - prev_match = TRUE; - } else ambiguous = TRUE; + } } } if (ambiguous) { g_set_error (error, 1, 1, _("'%s' is ambiguous (%s x %s)"), - input, ret, *p); + input, prev_match, ret); return NULL; } finish: -- cgit v1.2.1