diff options
author | Matthias Clasen <mclasen@redhat.com> | 2012-08-06 23:37:36 -0400 |
---|---|---|
committer | Matthias Clasen <mclasen@redhat.com> | 2012-08-06 23:37:36 -0400 |
commit | e2c15e2791870c297bbc8e055dae359f9bc76a0c (patch) | |
tree | de70c35ef8cecebefb94238556ce7289df2439da /gtk/gtkcontainer.c | |
parent | 2661403f88af24530e57ada1c552311ae1c6fb26 (diff) | |
download | gtk+-e2c15e2791870c297bbc8e055dae359f9bc76a0c.tar.gz |
Fix a memory leak
As Pavel Vesin pointed out in bug 681064, we were leaking
the container_restyle_queue.
Diffstat (limited to 'gtk/gtkcontainer.c')
-rw-r--r-- | gtk/gtkcontainer.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/gtk/gtkcontainer.c b/gtk/gtkcontainer.c index be68602788..ad8ccb5657 100644 --- a/gtk/gtkcontainer.c +++ b/gtk/gtkcontainer.c @@ -1648,14 +1648,18 @@ gtk_container_idle_sizer (gpointer data) current_time = g_get_monotonic_time (); slist = container_restyle_queue; container_restyle_queue = NULL; - for (; slist; slist = slist->next) + while (slist) { + GSList *next = slist->next; GtkContainer *container = slist->data; container->priv->restyle_pending = FALSE; _gtk_style_context_validate (gtk_widget_get_style_context (GTK_WIDGET (container)), current_time, 0); + + g_slist_free_1 (slist); + slist = next; } /* we may be invoked with a container_resize_queue of NULL, because |