From c3c93869fc736e36649f1cd6e33f00b49cb3122f Mon Sep 17 00:00:00 2001 From: Peter Wu Date: Wed, 3 Feb 2016 18:38:53 +0100 Subject: extcap: do not leak "version" field Caught by LeakSanitizer: Direct leak of 18 byte(s) in 3 object(s) allocated from: #0 0x55ec8c5ffec8 in __interceptor_malloc (run/wireshark+0x145dec8) #1 0x7f4d021e4328 in g_malloc /build/src/glib-2.46.2/glib/gmem.c:94 #2 0x7f4d021fd0de in g_strdup /build/src/glib-2.46.2/glib/gstrfuncs.c:363 #3 0x55ec8c6ce514 in extcap_parse_interface_sentence extcap_parser.c:670:26 #4 0x55ec8c6ce7ad in extcap_parse_interfaces extcap_parser.c:683:13 #5 0x55ec8c6b6781 in interfaces_cb extcap.c:313:5 #6 0x55ec8c6b4ce6 in extcap_foreach extcap.c:206:26 #7 0x55ec8c6b62a6 in extcap_interface_list extcap.c:415:5 #8 0x55ec8c6b7fab in extcap_register_preferences extcap.c:437:9 #9 0x55ec8c63104a in main wireshark-qt.cpp:847:5 #10 0x7f4ce8f4460f in __libc_start_main (/usr/lib/libc.so.6+0x2060f) #11 0x55ec8c569ed8 in _start (run/wireshark+0x13c7ed8) Change-Id: I0ef89e647b2cc9aab495a80f6c638e9b67cf3ad1 Reviewed-on: https://code.wireshark.org/review/13692 Reviewed-by: Dario Lombardo Petri-Dish: Dario Lombardo Tested-by: Petri Dish Buildbot Reviewed-by: Anders Broman --- extcap_parser.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) (limited to 'extcap_parser.c') diff --git a/extcap_parser.c b/extcap_parser.c index 652d7dde14..5a02df08ff 100644 --- a/extcap_parser.c +++ b/extcap_parser.c @@ -310,12 +310,9 @@ void extcap_free_interface(extcap_interface *i) { while (i) { next_i = i->next_interface; - if (i->call != NULL) - g_free(i->call); - - if (i->display != NULL) - g_free(i->display); - + g_free(i->call); + g_free(i->display); + g_free(i->version); g_free(i); i = next_i; } -- cgit v1.2.1