diff options
author | Kovarththanan Rajaratnam <kovarththanan.rajaratnam@gmail.com> | 2009-09-06 04:26:50 +0000 |
---|---|---|
committer | Kovarththanan Rajaratnam <kovarththanan.rajaratnam@gmail.com> | 2009-09-06 04:26:50 +0000 |
commit | 6fe1060cd1a85736dc60de3790eb03ed7f693cd8 (patch) | |
tree | cc0942b4f55f153eea4d3d951068ee42953a8de9 /epan/value_string.c | |
parent | a9e644f382bbe6d7524da3374f31217c9f395f91 (diff) | |
download | wireshark-6fe1060cd1a85736dc60de3790eb03ed7f693cd8.tar.gz wireshark-6fe1060cd1a85736dc60de3790eb03ed7f693cd8.tar.bz2 wireshark-6fe1060cd1a85736dc60de3790eb03ed7f693cd8.zip |
Don't pass ep_alloc()'ed strings to col_set_str().
Fixes https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=3984
svn path=/trunk/; revision=29726
Diffstat (limited to 'epan/value_string.c')
-rw-r--r-- | epan/value_string.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/epan/value_string.c b/epan/value_string.c index e74ea6ceee..d75def715b 100644 --- a/epan/value_string.c +++ b/epan/value_string.c @@ -50,6 +50,22 @@ val_to_str(guint32 val, const value_string *vs, const char *fmt) { } /* Tries to match val against each element in the value_string array vs. + Returns the associated string ptr on a match. + Returns 'unknown_str', on failure. */ +const gchar* +val_to_str_const(guint32 val, const value_string *vs, const char *unknown_str) { + const gchar *ret; + + g_assert(unknown_str != NULL); + + ret = match_strval(val, vs); + if (ret != NULL) + return ret; + + return unknown_str; +} + +/* Tries to match val against each element in the value_string array vs. Returns the associated string ptr, and sets "*idx" to the index in that table, on a match, and returns NULL, and sets "*idx" to -1, on failure. */ |