summaryrefslogtreecommitdiff
path: root/gtk/gtkstackswitcher.c
diff options
context:
space:
mode:
authorPaolo Borelli <pborelli@gnome.org>2014-03-29 23:14:51 +0100
committerPaolo Borelli <pborelli@gnome.org>2014-03-29 23:15:28 +0100
commit63b90bb5b8056f60abe4e8ab0d2a73c2d2cad93f (patch)
tree768cfd009be728caa9bce2fd6669b2e7b8e0cbfc /gtk/gtkstackswitcher.c
parent7ac684e9e3d0e58931d1c165d83e9e407467b461 (diff)
downloadgtk+-63b90bb5b8056f60abe4e8ab0d2a73c2d2cad93f.tar.gz
stackswitcher: do not leak buttons hash table
Diffstat (limited to 'gtk/gtkstackswitcher.c')
-rw-r--r--gtk/gtkstackswitcher.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/gtk/gtkstackswitcher.c b/gtk/gtkstackswitcher.c
index 361bd54bc0..d5b7ef1f89 100644
--- a/gtk/gtkstackswitcher.c
+++ b/gtk/gtkstackswitcher.c
@@ -479,6 +479,19 @@ gtk_stack_switcher_dispose (GObject *object)
}
static void
+gtk_stack_switcher_finalize (GObject *object)
+{
+ GtkStackSwitcher *switcher = GTK_STACK_SWITCHER (object);
+ GtkStackSwitcherPrivate *priv;
+
+ priv = gtk_stack_switcher_get_instance_private (switcher);
+
+ g_hash_table_destroy (priv->buttons);
+
+ G_OBJECT_CLASS (gtk_stack_switcher_parent_class)->finalize (object);
+}
+
+static void
gtk_stack_switcher_class_init (GtkStackSwitcherClass *class)
{
GObjectClass *object_class = G_OBJECT_CLASS (class);
@@ -486,6 +499,7 @@ gtk_stack_switcher_class_init (GtkStackSwitcherClass *class)
object_class->get_property = gtk_stack_switcher_get_property;
object_class->set_property = gtk_stack_switcher_set_property;
object_class->dispose = gtk_stack_switcher_dispose;
+ object_class->finalize = gtk_stack_switcher_finalize;
g_object_class_install_property (object_class,
PROP_STACK,