forked from AuroraMiddleware/gtk
Ref the new icons before unreffing the old ones. (#154468, Morten
2004-10-04 Matthias Clasen <mclasen@redhat.com> * gtk/gtkwindow.c (gtk_window_set_icon_list): Ref the new icons before unreffing the old ones. (#154468, Morten Welinder)
This commit is contained in:
parent
49ba32e195
commit
69a603cacc
@ -1,3 +1,8 @@
|
|||||||
|
2004-10-04 Matthias Clasen <mclasen@redhat.com>
|
||||||
|
|
||||||
|
* gtk/gtkwindow.c (gtk_window_set_icon_list): Ref the new icons
|
||||||
|
before unreffing the old ones. (#154468, Morten Welinder)
|
||||||
|
|
||||||
2004-10-03 Matthias Clasen <mclasen@redhat.com>
|
2004-10-03 Matthias Clasen <mclasen@redhat.com>
|
||||||
|
|
||||||
* gtk/gtkiconview.c (gtk_icon_view_set_model): Reset pointers
|
* gtk/gtkiconview.c (gtk_icon_view_set_model): Reset pointers
|
||||||
|
@ -1,3 +1,8 @@
|
|||||||
|
2004-10-04 Matthias Clasen <mclasen@redhat.com>
|
||||||
|
|
||||||
|
* gtk/gtkwindow.c (gtk_window_set_icon_list): Ref the new icons
|
||||||
|
before unreffing the old ones. (#154468, Morten Welinder)
|
||||||
|
|
||||||
2004-10-03 Matthias Clasen <mclasen@redhat.com>
|
2004-10-03 Matthias Clasen <mclasen@redhat.com>
|
||||||
|
|
||||||
* gtk/gtkiconview.c (gtk_icon_view_set_model): Reset pointers
|
* gtk/gtkiconview.c (gtk_icon_view_set_model): Reset pointers
|
||||||
|
@ -1,3 +1,8 @@
|
|||||||
|
2004-10-04 Matthias Clasen <mclasen@redhat.com>
|
||||||
|
|
||||||
|
* gtk/gtkwindow.c (gtk_window_set_icon_list): Ref the new icons
|
||||||
|
before unreffing the old ones. (#154468, Morten Welinder)
|
||||||
|
|
||||||
2004-10-03 Matthias Clasen <mclasen@redhat.com>
|
2004-10-03 Matthias Clasen <mclasen@redhat.com>
|
||||||
|
|
||||||
* gtk/gtkiconview.c (gtk_icon_view_set_model): Reset pointers
|
* gtk/gtkiconview.c (gtk_icon_view_set_model): Reset pointers
|
||||||
|
@ -1,3 +1,8 @@
|
|||||||
|
2004-10-04 Matthias Clasen <mclasen@redhat.com>
|
||||||
|
|
||||||
|
* gtk/gtkwindow.c (gtk_window_set_icon_list): Ref the new icons
|
||||||
|
before unreffing the old ones. (#154468, Morten Welinder)
|
||||||
|
|
||||||
2004-10-03 Matthias Clasen <mclasen@redhat.com>
|
2004-10-03 Matthias Clasen <mclasen@redhat.com>
|
||||||
|
|
||||||
* gtk/gtkiconview.c (gtk_icon_view_set_model): Reset pointers
|
* gtk/gtkiconview.c (gtk_icon_view_set_model): Reset pointers
|
||||||
|
@ -2653,11 +2653,11 @@ icon_list_from_theme (GtkWidget *widget,
|
|||||||
icon_theme = gtk_icon_theme_get_for_screen (gtk_widget_get_screen (widget));
|
icon_theme = gtk_icon_theme_get_for_screen (gtk_widget_get_screen (widget));
|
||||||
|
|
||||||
sizes = gtk_icon_theme_get_icon_sizes (icon_theme, name);
|
sizes = gtk_icon_theme_get_icon_sizes (icon_theme, name);
|
||||||
list = NULL;
|
|
||||||
|
|
||||||
|
list = NULL;
|
||||||
for (i = 0; sizes[i]; i++)
|
for (i = 0; sizes[i]; i++)
|
||||||
{
|
{
|
||||||
/* FIXME
|
/* FIXME
|
||||||
* We need an EWMH extension to handle scalable icons
|
* We need an EWMH extension to handle scalable icons
|
||||||
* by passing their name to the WM. For now just use a
|
* by passing their name to the WM. For now just use a
|
||||||
* fixed size of 48.
|
* fixed size of 48.
|
||||||
@ -2672,6 +2672,8 @@ icon_list_from_theme (GtkWidget *widget,
|
|||||||
list = g_list_append (list, icon);
|
list = g_list_append (list, icon);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
g_free (sizes);
|
||||||
|
|
||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2852,14 +2854,15 @@ gtk_window_set_icon_list (GtkWindow *window,
|
|||||||
if (info->icon_list == list) /* check for NULL mostly */
|
if (info->icon_list == list) /* check for NULL mostly */
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
g_list_foreach (list,
|
||||||
|
(GFunc) g_object_ref, NULL);
|
||||||
|
|
||||||
g_list_foreach (info->icon_list,
|
g_list_foreach (info->icon_list,
|
||||||
(GFunc) g_object_unref, NULL);
|
(GFunc) g_object_unref, NULL);
|
||||||
|
|
||||||
g_list_free (info->icon_list);
|
g_list_free (info->icon_list);
|
||||||
|
|
||||||
info->icon_list = g_list_copy (list);
|
info->icon_list = g_list_copy (list);
|
||||||
g_list_foreach (info->icon_list,
|
|
||||||
(GFunc) g_object_ref, NULL);
|
|
||||||
|
|
||||||
g_object_notify (G_OBJECT (window), "icon");
|
g_object_notify (G_OBJECT (window), "icon");
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user