aboutsummaryrefslogtreecommitdiffstats
path: root/ui
diff options
context:
space:
mode:
authorAnders Broman <anders.broman@ericsson.com>2012-04-14 07:44:51 +0000
committerAnders Broman <anders.broman@ericsson.com>2012-04-14 07:44:51 +0000
commit7330ec7035a86773e33ee69d2dbd9ba686ac99ca (patch)
treedddd793ae3d7cefbe3f2fd7ca6e63b036fd74602 /ui
parentff2840fc2f6e24dfa7afb6f612576dfca6bae0e8 (diff)
From Evan Huus: Memory leak in scan_local_interfaces. https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=7086
svn path=/trunk/; revision=42061
Diffstat (limited to 'ui')
-rw-r--r--ui/gtk/main.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/ui/gtk/main.c b/ui/gtk/main.c
index 9641555eb0..46f14fc3a3 100644
--- a/ui/gtk/main.c
+++ b/ui/gtk/main.c
@@ -3980,7 +3980,7 @@ scan_local_interfaces(capture_options* capture_opts, int *error)
GList *if_entry, *lt_entry, *if_list;
if_info_t *if_info, *temp;
char *if_string="";
- gchar *descr, *str, *err_str = NULL;
+ gchar *descr, *err_str = NULL;
if_capabilities_t *caps=NULL;
gint linktype_count;
cap_settings_t cap_settings;
@@ -4094,17 +4094,16 @@ scan_local_interfaces(capture_options* capture_opts, int *error)
#endif
for (lt_entry = caps->data_link_types; lt_entry != NULL; lt_entry = g_list_next(lt_entry)) {
data_link_info = lt_entry->data;
- if (data_link_info->description != NULL) {
- str = g_strdup_printf("%s", data_link_info->description);
- } else {
- str = g_strdup_printf("%s (not supported)", data_link_info->name);
- }
if (linktype_count == 0) {
device.active_dlt = data_link_info->dlt;
}
link = (link_row *)g_malloc(sizeof(link_row));
link->dlt = data_link_info->dlt;
- link->name = g_strdup(str);
+ if (data_link_info->description != NULL) {
+ link->name = g_strdup_printf("%s", data_link_info->description);
+ } else {
+ link->name = g_strdup_printf("%s (not supported)", data_link_info->name);
+ }
device.links = g_list_append(device.links, link);
linktype_count++;
}