diff options
author | Jakub Zawadzki <darkjames-ws@darkjames.pl> | 2012-07-26 17:23:35 +0000 |
---|---|---|
committer | Jakub Zawadzki <darkjames-ws@darkjames.pl> | 2012-07-26 17:23:35 +0000 |
commit | 80721f54980b3b769f46b1fb5836876b28d25417 (patch) | |
tree | f785e0e7d10d7d22db0702f1f18bc9a803137a10 /ui/gtk/gui_utils.c | |
parent | 8f308fe1b180b41969539408e6642b6f99d28997 (diff) |
Fix memleak in window_icon_realize_cb()
gtk_window_set_icon_list() duplicates list so after setting we need
to free generated one.
svn path=/trunk/; revision=44052
Diffstat (limited to 'ui/gtk/gui_utils.c')
-rw-r--r-- | ui/gtk/gui_utils.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/ui/gtk/gui_utils.c b/ui/gtk/gui_utils.c index 8639f2a0c2..56a36eec64 100644 --- a/ui/gtk/gui_utils.c +++ b/ui/gtk/gui_utils.c @@ -122,7 +122,6 @@ window_icon_realize_cb (GtkWidget *win, gpointer data _U_) GList *ws_icon_list=NULL; GdkPixbuf *icon; - icon = gdk_pixbuf_new_from_xpm_data ((const char **) wsicon16_xpm); ws_icon_list = g_list_append (ws_icon_list, icon); icon = gdk_pixbuf_new_from_xpm_data ((const char **) wsicon32_xpm); @@ -131,7 +130,12 @@ window_icon_realize_cb (GtkWidget *win, gpointer data _U_) ws_icon_list = g_list_append (ws_icon_list, icon); icon = gdk_pixbuf_new_from_xpm_data ((const char **) wsicon64_xpm); ws_icon_list = g_list_append (ws_icon_list, icon); + gtk_window_set_icon_list(GTK_WINDOW(win), ws_icon_list); + + g_list_foreach(ws_icon_list, (GFunc) g_object_unref, NULL); + g_list_free(ws_icon_list); + /* set icon by name, this allows us to use even SVG icon if it is present */ gtk_window_set_icon_name(GTK_WINDOW(win), "wireshark"); #endif |