+2008-08-07 Michael Natterer <mitch@imendio.com>
+
+ * gtk/gtkclist.c
+ * gtk/gtkcontainer.c
+ * gtk/gtkfilechooserbutton.c
+ * gtk/gtkgamma.c
+ * gtk/gtkmenutoolbutton.c
+ * gtk/gtkoptionmenu.c
+ * gtk/gtkradiobutton.c
+ * gtk/gtkradiomenuitem.c
+ * gtk/gtktipsquery.c
+ * gtk/gtktree.c
+ * gtk/gtktreeview.c: chain up unconditionally in destroy().
+
+ * gtk/gtkhandlebox.c: remove empty destroy() implementation.
+
2008-08-07 Michael Natterer <mitch@imendio.com>
Bug 546756 – gnome-panel crashed with SIGSEGV in
clist->column[i].button = NULL;
}
- if (GTK_OBJECT_CLASS (parent_class)->destroy)
- (*GTK_OBJECT_CLASS (parent_class)->destroy) (object);
+ GTK_OBJECT_CLASS (parent_class)->destroy (object);
}
static void
gtk_container_destroy (GtkObject *object)
{
GtkContainer *container = GTK_CONTAINER (object);
-
+
if (GTK_CONTAINER_RESIZE_PENDING (container))
_gtk_container_dequeue_resize_handler (container);
*/
if (container->has_focus_chain)
gtk_container_unset_focus_chain (container);
-
+
gtk_container_foreach (container, (GtkCallback) gtk_widget_destroy, NULL);
-
- if (GTK_OBJECT_CLASS (parent_class)->destroy)
- (* GTK_OBJECT_CLASS (parent_class)->destroy) (object);
+
+ GTK_OBJECT_CLASS (parent_class)->destroy (object);
}
static void
priv->fs = NULL;
}
- if (GTK_OBJECT_CLASS (gtk_file_chooser_button_parent_class)->destroy != NULL)
- (*GTK_OBJECT_CLASS (gtk_file_chooser_button_parent_class)->destroy) (object);
+ GTK_OBJECT_CLASS (gtk_file_chooser_button_parent_class)->destroy (object);
}
if (c->gamma_dialog)
gtk_widget_destroy (c->gamma_dialog);
- if (GTK_OBJECT_CLASS (gtk_gamma_curve_parent_class)->destroy)
- (* GTK_OBJECT_CLASS (gtk_gamma_curve_parent_class)->destroy) (object);
+ GTK_OBJECT_CLASS (gtk_gamma_curve_parent_class)->destroy (object);
}
#define __GTK_GAMMA_CURVE_C__
guint param_id,
GValue *value,
GParamSpec *pspec);
-static void gtk_handle_box_destroy (GtkObject *object);
static void gtk_handle_box_map (GtkWidget *widget);
static void gtk_handle_box_unmap (GtkWidget *widget);
static void gtk_handle_box_realize (GtkWidget *widget);
gtk_handle_box_class_init (GtkHandleBoxClass *class)
{
GObjectClass *gobject_class;
- GtkObjectClass *object_class;
GtkWidgetClass *widget_class;
GtkContainerClass *container_class;
gobject_class = (GObjectClass *) class;
- object_class = (GtkObjectClass *) class;
widget_class = (GtkWidgetClass *) class;
container_class = (GtkContainerClass *) class;
FALSE,
GTK_PARAM_READABLE));
- object_class->destroy = gtk_handle_box_destroy;
-
widget_class->map = gtk_handle_box_map;
widget_class->unmap = gtk_handle_box_unmap;
widget_class->realize = gtk_handle_box_realize;
return g_object_new (GTK_TYPE_HANDLE_BOX, NULL);
}
-static void
-gtk_handle_box_destroy (GtkObject *object)
-{
- if (GTK_OBJECT_CLASS (gtk_handle_box_parent_class)->destroy)
- (* GTK_OBJECT_CLASS (gtk_handle_box_parent_class)->destroy) (object);
-}
-
static void
gtk_handle_box_map (GtkWidget *widget)
{
arrow_button_button_press_event_cb,
button);
}
-
- if (GTK_OBJECT_CLASS (gtk_menu_tool_button_parent_class)->destroy)
- (*GTK_OBJECT_CLASS (gtk_menu_tool_button_parent_class)->destroy) (object);
+
+ GTK_OBJECT_CLASS (gtk_menu_tool_button_parent_class)->destroy (object);
}
/**
if (option_menu->menu)
gtk_widget_destroy (option_menu->menu);
- if (GTK_OBJECT_CLASS (gtk_option_menu_parent_class)->destroy)
- (* GTK_OBJECT_CLASS (gtk_option_menu_parent_class)->destroy) (object);
+ GTK_OBJECT_CLASS (gtk_option_menu_parent_class)->destroy (object);
}
static void
g_signal_emit (old_group_singleton, group_changed_signal, 0);
if (was_in_group)
g_signal_emit (radio_button, group_changed_signal, 0);
-
- if (GTK_OBJECT_CLASS (gtk_radio_button_parent_class)->destroy)
- (* GTK_OBJECT_CLASS (gtk_radio_button_parent_class)->destroy) (object);
+
+ GTK_OBJECT_CLASS (gtk_radio_button_parent_class)->destroy (object);
}
static void
g_signal_emit (old_group_singleton, group_changed_signal, 0);
if (was_in_group)
g_signal_emit (radio_menu_item, group_changed_signal, 0);
-
- if (GTK_OBJECT_CLASS (gtk_radio_menu_item_parent_class)->destroy)
- (* GTK_OBJECT_CLASS (gtk_radio_menu_item_parent_class)->destroy) (object);
+
+ GTK_OBJECT_CLASS (gtk_radio_menu_item_parent_class)->destroy (object);
}
static void
g_free (tips_query->label_no_tip);
tips_query->label_no_tip = NULL;
- if (GTK_OBJECT_CLASS (parent_class)->destroy)
- (* GTK_OBJECT_CLASS (parent_class)->destroy) (object);
+ GTK_OBJECT_CLASS (parent_class)->destroy (object);
}
GtkWidget*
g_list_free (tree->selection);
tree->selection = NULL;
}
-
- if (GTK_OBJECT_CLASS (parent_class)->destroy)
- (* GTK_OBJECT_CLASS (parent_class)->destroy) (object);
+
+ GTK_OBJECT_CLASS (parent_class)->destroy (object);
}
static void
tree_view->priv->vadjustment = NULL;
}
- if (GTK_OBJECT_CLASS (gtk_tree_view_parent_class)->destroy)
- (* GTK_OBJECT_CLASS (gtk_tree_view_parent_class)->destroy) (object);
+ GTK_OBJECT_CLASS (gtk_tree_view_parent_class)->destroy (object);
}
\f