aboutsummaryrefslogtreecommitdiffstats
path: root/epan/decode_as.c
diff options
context:
space:
mode:
authorGerald Combs <gerald@wireshark.org>2013-11-29 03:14:24 +0000
committerGerald Combs <gerald@wireshark.org>2013-11-29 03:14:24 +0000
commit5acdfae0700795a4c8859579cd51aad8696aeaeb (patch)
tree6d0f98d30dcb3944e19aff144cd5d2ad4579d1f2 /epan/decode_as.c
parent9e0cd5d1d854a4e90ce448eba2c65cfbe34c143b (diff)
Restore disabled "decode as" settings.
svn path=/trunk/; revision=53635
Diffstat (limited to 'epan/decode_as.c')
-rw-r--r--epan/decode_as.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/epan/decode_as.c b/epan/decode_as.c
index f6761e4ddd..fafe4dbf96 100644
--- a/epan/decode_as.c
+++ b/epan/decode_as.c
@@ -162,6 +162,7 @@ read_set_decode_as_entries(gchar *key, const gchar *value,
guint i, j;
dissector_table_t sub_dissectors;
prefs_set_pref_e retval = PREFS_SET_OK;
+ gboolean is_valid = FALSE;
if (strcmp(key, DECODE_AS_ENTRY) == 0) {
/* Parse csv into table, selector, initial, current */
@@ -183,7 +184,11 @@ read_set_decode_as_entries(gchar *key, const gchar *value,
lookup.handle = NULL;
g_slist_foreach(dissector_table_get_dissector_handles(sub_dissectors),
change_dissector_if_matched, &lookup);
- if (lookup.handle != NULL) {
+ if (lookup.handle != NULL || g_ascii_strcasecmp(values[3], DECODE_AS_NONE) == 0) {
+ is_valid = TRUE;
+ }
+
+ if (is_valid) {
dissector_change_uint(values[0], atoi(values[1]), lookup.handle);
decode_build_reset_list(g_strdup(values[0]), dissector_table_get_type(sub_dissectors),
g_strdup(values[1]), NULL, NULL);