extcap: use options as they are shown in the dialog.
authorDario Lombardo <lomato@gmail.com>
Thu, 3 Aug 2017 12:36:47 +0000 (14:36 +0200)
committerAnders Broman <a.broman58@gmail.com>
Tue, 15 Aug 2017 14:49:41 +0000 (14:49 +0000)
Bug: 13051
Change-Id: I287a4e1d529cc281aaae4a786010358c108d5f93
Reviewed-on: https://code.wireshark.org/review/22933
Petri-Dish: Roland Knall <rknall@gmail.com>
Petri-Dish: Dario Lombardo <lomato@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
extcap.c

index 13ea9cce82a4224761461c49b2c4ea9b3707fb4b..5e83813e5a96b3d7ba1e9b2c0a8bf144a2598fe0 100644 (file)
--- a/extcap.c
+++ b/extcap.c
@@ -1282,7 +1282,7 @@ GPtrArray *extcap_prepare_arguments(interface_options interface_opts)
                 arg_list = g_list_first((GList *)elem->data);
                 while (arg_list != NULL)
                 {
-                    const gchar *stored = NULL, * defval = NULL;
+                    const gchar *stored = NULL;
                     /* In case of boolflags only first element in arg_list is relevant. */
                     arg_iter = (extcap_arg *)(arg_list->data);
                     if (arg_iter->pref_valptr != NULL)
@@ -1290,32 +1290,22 @@ GPtrArray *extcap_prepare_arguments(interface_options interface_opts)
                         stored = *arg_iter->pref_valptr;
                     }
 
-                    if (arg_iter->default_complex != NULL && arg_iter->default_complex->_val != NULL)
-                    {
-                        defval = arg_iter->default_complex->_val;
-                    }
-
-                    /* Different data in storage then set for default */
-                    if (g_strcmp0(stored, defval) != 0)
+                    if (arg_iter->arg_type == EXTCAP_ARG_BOOLFLAG)
                     {
-                        if (arg_iter->arg_type == EXTCAP_ARG_BOOLFLAG)
+                        if (extcap_complex_get_bool(arg_iter->default_complex))
                         {
-                            if (g_strcmp0(stored, "true") == 0)
-                            {
-                                add_arg(arg_iter->call);
-                            }
+                            add_arg(arg_iter->call);
                         }
-                        else
+                        else if (g_strcmp0(stored, "true") == 0)
                         {
                             add_arg(arg_iter->call);
-                            add_arg(stored);
                         }
                     }
-                    else if (arg_iter->arg_type == EXTCAP_ARG_BOOLFLAG)
+                    else
                     {
-                        if (extcap_complex_get_bool(arg_iter->default_complex))
-                        {
+                        if (stored) {
                             add_arg(arg_iter->call);
+                            add_arg(stored);
                         }
                     }