diff options
author | Morten Welinder <terra@gnome.org> | 2004-10-04 18:46:46 +0000 |
---|---|---|
committer | Morten Welinder <mortenw@src.gnome.org> | 2004-10-04 18:46:46 +0000 |
commit | c3dc6ef23687ee2a3368163c675d0cbdff3bc9c5 (patch) | |
tree | c085acdc242cdda10c0d3818657a1c61fb10d620 | |
parent | 8b37d14787af25e7df53507bedbcc260ef199fba (diff) | |
download | glade-c3dc6ef23687ee2a3368163c675d0cbdff3bc9c5.tar.gz |
Glade properties are not GObjects, so don't use g_object_unref on them.
2004-10-04 Morten Welinder <terra@gnome.org>
* src/glade-widget.c (glade_widget_dispose): Glade properties are
not GObjects, so don't use g_object_unref on them.
-rw-r--r-- | ChangeLog | 2 | ||||
-rw-r--r-- | src/glade-gtk.c | 2 | ||||
-rw-r--r-- | src/glade-widget.c | 29 |
3 files changed, 20 insertions, 13 deletions
@@ -2,6 +2,8 @@ * src/glade-widget.c (glade_widget_finalize): Don't try to destroy a hash table with g_object_unref. + (glade_widget_dispose): Glade properties are not GObjects, so + don't use g_object_unref on them. 2004-09-23 David Hoover <karma@deadmoose.com> diff --git a/src/glade-gtk.c b/src/glade-gtk.c index a83df1ee..1fe47c92 100644 --- a/src/glade-gtk.c +++ b/src/glade-gtk.c @@ -867,6 +867,8 @@ glade_gtk_notebook_post_create (GObject *object) g_value_init (&value, G_TYPE_INT); g_value_set_int (&value, ask_for_number(_("Create a notebook"), _("Number of pages:"), 0, 100, 3)); + + // FIXME: Shouldn't we actually set this? } /** diff --git a/src/glade-widget.c b/src/glade-widget.c index 0ae47c84..77622b26 100644 --- a/src/glade-widget.c +++ b/src/glade-widget.c @@ -275,24 +275,27 @@ glade_widget_dispose (GObject *object) g_return_if_fail (GLADE_IS_WIDGET (object)); - if (widget->project) + if (widget->project) { g_object_unref (widget->project); + widget->project = NULL; + } - if (widget->widget) + if (widget->widget) { g_object_unref (widget->widget); + widget->widget = NULL; + } - if (widget->properties) - g_list_foreach (widget->properties, (GFunc) g_object_unref, NULL); - g_list_free (widget->properties); - - if (widget->packing_properties) - g_list_foreach (widget->packing_properties, (GFunc) g_object_unref, NULL); - g_list_free (widget->packing_properties); + if (widget->properties) { + g_list_foreach (widget->properties, (GFunc) glade_property_free, NULL); + g_list_free (widget->properties); + widget->properties = NULL; + } - widget->project = NULL; - widget->widget = NULL; - widget->properties = NULL; - widget->packing_properties = NULL; + if (widget->packing_properties) { + g_list_foreach (widget->packing_properties, (GFunc) glade_property_free, NULL); + g_list_free (widget->packing_properties); + widget->packing_properties = NULL; + } } /** |