Fix object finalization.
This commit is contained in:
		@ -193,12 +193,6 @@ eek_key_iface_init (EekKeyIface *iface)
 | 
			
		||||
static void
 | 
			
		||||
eek_clutter_key_dispose (GObject *object)
 | 
			
		||||
{
 | 
			
		||||
    EekClutterKeyPrivate *priv = EEK_CLUTTER_KEY_GET_PRIVATE(object);
 | 
			
		||||
 | 
			
		||||
    if (priv->simple) {
 | 
			
		||||
        g_object_unref (priv->simple);
 | 
			
		||||
        priv->simple = NULL;
 | 
			
		||||
    }
 | 
			
		||||
    clutter_group_remove_all (CLUTTER_GROUP(object));
 | 
			
		||||
    G_OBJECT_CLASS (eek_clutter_key_parent_class)->dispose (object);
 | 
			
		||||
}
 | 
			
		||||
@ -206,6 +200,9 @@ eek_clutter_key_dispose (GObject *object)
 | 
			
		||||
static void
 | 
			
		||||
eek_clutter_key_finalize (GObject *object)
 | 
			
		||||
{
 | 
			
		||||
    EekClutterKeyPrivate *priv = EEK_CLUTTER_KEY_GET_PRIVATE(object);
 | 
			
		||||
 | 
			
		||||
    g_object_unref (priv->simple);
 | 
			
		||||
    G_OBJECT_CLASS (eek_clutter_key_parent_class)->finalize (object);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -185,12 +185,6 @@ eek_keyboard_iface_init (EekKeyboardIface *iface)
 | 
			
		||||
static void
 | 
			
		||||
eek_clutter_keyboard_dispose (GObject *object)
 | 
			
		||||
{
 | 
			
		||||
    EekClutterKeyboardPrivate *priv = EEK_CLUTTER_KEYBOARD_GET_PRIVATE(object);
 | 
			
		||||
 | 
			
		||||
    if (priv->simple) {
 | 
			
		||||
        g_object_unref (priv->simple);
 | 
			
		||||
        priv->simple = NULL;
 | 
			
		||||
    }
 | 
			
		||||
    clutter_group_remove_all (CLUTTER_GROUP(object));
 | 
			
		||||
    G_OBJECT_CLASS (eek_clutter_keyboard_parent_class)->dispose (object);
 | 
			
		||||
}
 | 
			
		||||
@ -198,6 +192,9 @@ eek_clutter_keyboard_dispose (GObject *object)
 | 
			
		||||
static void
 | 
			
		||||
eek_clutter_keyboard_finalize (GObject *object)
 | 
			
		||||
{
 | 
			
		||||
    EekClutterKeyboardPrivate *priv = EEK_CLUTTER_KEYBOARD_GET_PRIVATE(object);
 | 
			
		||||
 | 
			
		||||
    g_object_unref (priv->simple);
 | 
			
		||||
    G_OBJECT_CLASS (eek_clutter_keyboard_parent_class)->finalize (object);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -253,19 +253,16 @@ eek_section_iface_init (EekSectionIface *iface)
 | 
			
		||||
static void
 | 
			
		||||
eek_clutter_section_dispose (GObject *object)
 | 
			
		||||
{
 | 
			
		||||
    EekClutterSectionPrivate *priv = EEK_CLUTTER_SECTION_GET_PRIVATE(object);
 | 
			
		||||
 | 
			
		||||
    clutter_group_remove_all (CLUTTER_GROUP(object));
 | 
			
		||||
    if (priv->simple) {
 | 
			
		||||
        g_object_unref (priv->simple);
 | 
			
		||||
        priv->simple = NULL;
 | 
			
		||||
    }
 | 
			
		||||
    G_OBJECT_CLASS (eek_clutter_section_parent_class)->dispose (object);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static void
 | 
			
		||||
eek_clutter_section_finalize (GObject *object)
 | 
			
		||||
{
 | 
			
		||||
    EekClutterSectionPrivate *priv = EEK_CLUTTER_SECTION_GET_PRIVATE(object);
 | 
			
		||||
 | 
			
		||||
    g_object_unref (priv->simple);
 | 
			
		||||
    G_OBJECT_CLASS (eek_clutter_section_parent_class)->finalize (object);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -196,18 +196,15 @@ eek_key_iface_init (EekKeyIface *iface)
 | 
			
		||||
static void
 | 
			
		||||
eek_gtk_key_dispose (GObject *object)
 | 
			
		||||
{
 | 
			
		||||
    EekGtkKeyPrivate *priv = EEK_GTK_KEY_GET_PRIVATE(object);
 | 
			
		||||
 | 
			
		||||
    if (priv->simple) {
 | 
			
		||||
        g_object_unref (priv->simple);
 | 
			
		||||
        priv->simple = NULL;
 | 
			
		||||
    }
 | 
			
		||||
    G_OBJECT_CLASS (eek_gtk_key_parent_class)->dispose (object);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static void
 | 
			
		||||
eek_gtk_key_finalize (GObject *object)
 | 
			
		||||
{
 | 
			
		||||
    EekGtkKeyPrivate *priv = EEK_GTK_KEY_GET_PRIVATE(object);
 | 
			
		||||
 | 
			
		||||
    g_object_unref (priv->simple);
 | 
			
		||||
    G_OBJECT_CLASS (eek_gtk_key_parent_class)->finalize (object);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -201,18 +201,15 @@ eek_keyboard_iface_init (EekKeyboardIface *iface)
 | 
			
		||||
static void
 | 
			
		||||
eek_gtk_keyboard_dispose (GObject *object)
 | 
			
		||||
{
 | 
			
		||||
    EekGtkKeyboardPrivate *priv = EEK_GTK_KEYBOARD_GET_PRIVATE(object);
 | 
			
		||||
 | 
			
		||||
    if (priv->simple) {
 | 
			
		||||
        g_object_unref (priv->simple);
 | 
			
		||||
        priv->simple = NULL;
 | 
			
		||||
    }
 | 
			
		||||
    G_OBJECT_CLASS (eek_gtk_keyboard_parent_class)->dispose (object);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static void
 | 
			
		||||
eek_gtk_keyboard_finalize (GObject *object)
 | 
			
		||||
{
 | 
			
		||||
    EekGtkKeyboardPrivate *priv = EEK_GTK_KEYBOARD_GET_PRIVATE(object);
 | 
			
		||||
 | 
			
		||||
    g_object_unref (priv->simple);
 | 
			
		||||
    G_OBJECT_CLASS (eek_gtk_keyboard_parent_class)->finalize (object);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -253,14 +253,7 @@ eek_gtk_section_dispose (GObject *object)
 | 
			
		||||
 | 
			
		||||
    num_rows = eek_section_get_rows (EEK_SECTION(object));
 | 
			
		||||
    for (i = 0; i < num_rows; i++)
 | 
			
		||||
        if (priv->rows[i]) {
 | 
			
		||||
            g_object_unref (priv->rows[i]);
 | 
			
		||||
            priv->rows[i] = NULL;
 | 
			
		||||
        }
 | 
			
		||||
    if (priv->simple) {
 | 
			
		||||
        g_object_unref (priv->simple);
 | 
			
		||||
        priv->simple = NULL;
 | 
			
		||||
    }
 | 
			
		||||
        gtk_container_remove (GTK_CONTAINER(object), priv->rows[i]);
 | 
			
		||||
    G_OBJECT_CLASS (eek_gtk_section_parent_class)->dispose (object);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -269,6 +262,7 @@ eek_gtk_section_finalize (GObject *object)
 | 
			
		||||
{
 | 
			
		||||
    EekGtkSectionPrivate *priv = EEK_GTK_SECTION_GET_PRIVATE(object);
 | 
			
		||||
 | 
			
		||||
    g_object_unref (priv->simple);
 | 
			
		||||
    g_slice_free (GtkWidget *, priv->rows);
 | 
			
		||||
    G_OBJECT_CLASS (eek_gtk_section_parent_class)->finalize (object);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user