Fix object finalization.

This commit is contained in:
Daiki Ueno
2010-06-07 07:30:12 +09:00
parent 4258c86872
commit 2cfb5004c5
6 changed files with 17 additions and 38 deletions

View File

@ -193,12 +193,6 @@ eek_key_iface_init (EekKeyIface *iface)
static void static void
eek_clutter_key_dispose (GObject *object) 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)); clutter_group_remove_all (CLUTTER_GROUP(object));
G_OBJECT_CLASS (eek_clutter_key_parent_class)->dispose (object); G_OBJECT_CLASS (eek_clutter_key_parent_class)->dispose (object);
} }
@ -206,6 +200,9 @@ eek_clutter_key_dispose (GObject *object)
static void static void
eek_clutter_key_finalize (GObject *object) 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); G_OBJECT_CLASS (eek_clutter_key_parent_class)->finalize (object);
} }

View File

@ -185,12 +185,6 @@ eek_keyboard_iface_init (EekKeyboardIface *iface)
static void static void
eek_clutter_keyboard_dispose (GObject *object) 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)); clutter_group_remove_all (CLUTTER_GROUP(object));
G_OBJECT_CLASS (eek_clutter_keyboard_parent_class)->dispose (object); G_OBJECT_CLASS (eek_clutter_keyboard_parent_class)->dispose (object);
} }
@ -198,6 +192,9 @@ eek_clutter_keyboard_dispose (GObject *object)
static void static void
eek_clutter_keyboard_finalize (GObject *object) 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); G_OBJECT_CLASS (eek_clutter_keyboard_parent_class)->finalize (object);
} }

View File

@ -253,19 +253,16 @@ eek_section_iface_init (EekSectionIface *iface)
static void static void
eek_clutter_section_dispose (GObject *object) eek_clutter_section_dispose (GObject *object)
{ {
EekClutterSectionPrivate *priv = EEK_CLUTTER_SECTION_GET_PRIVATE(object);
clutter_group_remove_all (CLUTTER_GROUP(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); G_OBJECT_CLASS (eek_clutter_section_parent_class)->dispose (object);
} }
static void static void
eek_clutter_section_finalize (GObject *object) 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); G_OBJECT_CLASS (eek_clutter_section_parent_class)->finalize (object);
} }

View File

@ -196,18 +196,15 @@ eek_key_iface_init (EekKeyIface *iface)
static void static void
eek_gtk_key_dispose (GObject *object) 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); G_OBJECT_CLASS (eek_gtk_key_parent_class)->dispose (object);
} }
static void static void
eek_gtk_key_finalize (GObject *object) 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); G_OBJECT_CLASS (eek_gtk_key_parent_class)->finalize (object);
} }

View File

@ -201,18 +201,15 @@ eek_keyboard_iface_init (EekKeyboardIface *iface)
static void static void
eek_gtk_keyboard_dispose (GObject *object) 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); G_OBJECT_CLASS (eek_gtk_keyboard_parent_class)->dispose (object);
} }
static void static void
eek_gtk_keyboard_finalize (GObject *object) 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); G_OBJECT_CLASS (eek_gtk_keyboard_parent_class)->finalize (object);
} }

View File

@ -253,14 +253,7 @@ eek_gtk_section_dispose (GObject *object)
num_rows = eek_section_get_rows (EEK_SECTION(object)); num_rows = eek_section_get_rows (EEK_SECTION(object));
for (i = 0; i < num_rows; i++) for (i = 0; i < num_rows; i++)
if (priv->rows[i]) { gtk_container_remove (GTK_CONTAINER(object), priv->rows[i]);
g_object_unref (priv->rows[i]);
priv->rows[i] = NULL;
}
if (priv->simple) {
g_object_unref (priv->simple);
priv->simple = NULL;
}
G_OBJECT_CLASS (eek_gtk_section_parent_class)->dispose (object); 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); EekGtkSectionPrivate *priv = EEK_GTK_SECTION_GET_PRIVATE(object);
g_object_unref (priv->simple);
g_slice_free (GtkWidget *, priv->rows); g_slice_free (GtkWidget *, priv->rows);
G_OBJECT_CLASS (eek_gtk_section_parent_class)->finalize (object); G_OBJECT_CLASS (eek_gtk_section_parent_class)->finalize (object);
} }