diff --git a/ChangeLog b/ChangeLog index ced0d903b8..08ad67acfc 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Tue Jan 8 14:42:19 2002 Owen Taylor + + * gtk/gtktoolbar.c: Fix leaks of results of + gtk_container_get_children(). (#68199, Damon Chaplin.) + Tue Jan 8 14:19:43 2002 Owen Taylor * gtk/gtkcheckbutton.c (gtk_check_button_size_allocate): diff --git a/ChangeLog.pre-2-0 b/ChangeLog.pre-2-0 index ced0d903b8..08ad67acfc 100644 --- a/ChangeLog.pre-2-0 +++ b/ChangeLog.pre-2-0 @@ -1,3 +1,8 @@ +Tue Jan 8 14:42:19 2002 Owen Taylor + + * gtk/gtktoolbar.c: Fix leaks of results of + gtk_container_get_children(). (#68199, Damon Chaplin.) + Tue Jan 8 14:19:43 2002 Owen Taylor * gtk/gtkcheckbutton.c (gtk_check_button_size_allocate): diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index ced0d903b8..08ad67acfc 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,8 @@ +Tue Jan 8 14:42:19 2002 Owen Taylor + + * gtk/gtktoolbar.c: Fix leaks of results of + gtk_container_get_children(). (#68199, Damon Chaplin.) + Tue Jan 8 14:19:43 2002 Owen Taylor * gtk/gtkcheckbutton.c (gtk_check_button_size_allocate): diff --git a/ChangeLog.pre-2-2 b/ChangeLog.pre-2-2 index ced0d903b8..08ad67acfc 100644 --- a/ChangeLog.pre-2-2 +++ b/ChangeLog.pre-2-2 @@ -1,3 +1,8 @@ +Tue Jan 8 14:42:19 2002 Owen Taylor + + * gtk/gtktoolbar.c: Fix leaks of results of + gtk_container_get_children(). (#68199, Damon Chaplin.) + Tue Jan 8 14:19:43 2002 Owen Taylor * gtk/gtkcheckbutton.c (gtk_check_button_size_allocate): diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index ced0d903b8..08ad67acfc 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,3 +1,8 @@ +Tue Jan 8 14:42:19 2002 Owen Taylor + + * gtk/gtktoolbar.c: Fix leaks of results of + gtk_container_get_children(). (#68199, Damon Chaplin.) + Tue Jan 8 14:19:43 2002 Owen Taylor * gtk/gtkcheckbutton.c (gtk_check_button_size_allocate): diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index ced0d903b8..08ad67acfc 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,8 @@ +Tue Jan 8 14:42:19 2002 Owen Taylor + + * gtk/gtktoolbar.c: Fix leaks of results of + gtk_container_get_children(). (#68199, Damon Chaplin.) + Tue Jan 8 14:19:43 2002 Owen Taylor * gtk/gtkcheckbutton.c (gtk_check_button_size_allocate): diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index ced0d903b8..08ad67acfc 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,8 @@ +Tue Jan 8 14:42:19 2002 Owen Taylor + + * gtk/gtktoolbar.c: Fix leaks of results of + gtk_container_get_children(). (#68199, Damon Chaplin.) + Tue Jan 8 14:19:43 2002 Owen Taylor * gtk/gtkcheckbutton.c (gtk_check_button_size_allocate): diff --git a/gtk/gtktoolbar.c b/gtk/gtktoolbar.c index 916f359a1e..9c9b3fe76c 100644 --- a/gtk/gtktoolbar.c +++ b/gtk/gtktoolbar.c @@ -1602,6 +1602,16 @@ gtk_real_toolbar_orientation_changed (GtkToolbar *toolbar, } } +static GtkWidget * +get_first_child (GtkContainer *container) +{ + GList *children = gtk_container_get_children (children); + GtkWidget *result = children ? children->data : NULL; + g_list_free (children); + + return result; +} + static void gtk_real_toolbar_style_changed (GtkToolbar *toolbar, GtkToolbarStyle style) @@ -1650,7 +1660,7 @@ gtk_real_toolbar_style_changed (GtkToolbar *toolbar, if (child->label && !GTK_WIDGET_VISIBLE (child->label)) gtk_widget_show (child->label); - box = (GtkWidget*)gtk_container_get_children (GTK_CONTAINER (child->widget))->data; + box = get_first_child (GTK_CONTAINER (child->widget)); if (GTK_IS_HBOX (box)) { @@ -1694,7 +1704,7 @@ gtk_real_toolbar_style_changed (GtkToolbar *toolbar, if (child->label && !GTK_WIDGET_VISIBLE (child->label)) gtk_widget_show (child->label); - box = (GtkWidget*)gtk_container_get_children (GTK_CONTAINER (child->widget))->data; + box = get_first_child (GTK_CONTAINER (child->widget)); if (GTK_IS_VBOX (box)) {