+2004-04-05 Federico Mena Quintero <federico@ximian.com>
+
+ * gtk/gtkpathbar.c (_gtk_path_bar_set_path): Ref/sink the
+ buttons. Also, free them correctly upon failure. Based on a
+ patch by Morten Welinder, fixes #137956.
+
2004-04-05 Anders Carlsson <andersca@gnome.org>
* gdk/gdk.c (gdk_arg_context_parse): Handle '--' correctly.
+2004-04-05 Federico Mena Quintero <federico@ximian.com>
+
+ * gtk/gtkpathbar.c (_gtk_path_bar_set_path): Ref/sink the
+ buttons. Also, free them correctly upon failure. Based on a
+ patch by Morten Welinder, fixes #137956.
+
2004-04-05 Anders Carlsson <andersca@gnome.org>
* gdk/gdk.c (gdk_arg_context_parse): Handle '--' correctly.
+2004-04-05 Federico Mena Quintero <federico@ximian.com>
+
+ * gtk/gtkpathbar.c (_gtk_path_bar_set_path): Ref/sink the
+ buttons. Also, free them correctly upon failure. Based on a
+ patch by Morten Welinder, fixes #137956.
+
2004-04-05 Anders Carlsson <andersca@gnome.org>
* gdk/gdk.c (gdk_arg_context_parse): Handle '--' correctly.
+2004-04-05 Federico Mena Quintero <federico@ximian.com>
+
+ * gtk/gtkpathbar.c (_gtk_path_bar_set_path): Ref/sink the
+ buttons. Also, free them correctly upon failure. Based on a
+ patch by Morten Welinder, fixes #137956.
+
2004-04-05 Anders Carlsson <andersca@gnome.org>
* gdk/gdk.c (gdk_arg_context_parse): Handle '--' correctly.
+2004-04-05 Federico Mena Quintero <federico@ximian.com>
+
+ * gtk/gtkpathbar.c (_gtk_path_bar_set_path): Ref/sink the
+ buttons. Also, free them correctly upon failure. Based on a
+ patch by Morten Welinder, fixes #137956.
+
2004-04-05 Anders Carlsson <andersca@gnome.org>
* gdk/gdk.c (gdk_arg_context_parse): Handle '--' correctly.
gtk_file_info_free (file_info);
gtk_file_path_free (path);
+ g_object_ref (button_data->button);
+ gtk_object_sink (GTK_OBJECT (button_data->button));
+
new_buttons = g_list_prepend (new_buttons, button_data);
if (button_data->type != NORMAL_BUTTON)
for (l = new_buttons; l; l = l->next)
{
- GtkWidget *button = BUTTON_DATA (l->data)->button;
- gtk_widget_destroy (button);
- gtk_widget_unref (button);
+ ButtonData *button_data;
+
+ button_data = BUTTON_DATA (l->data);
+
+ gtk_widget_unref (button_data->button);
+ button_data_free (button_data);
}
g_list_free (new_buttons);