[gnome-notes/gnome-3-28] manager: Fix circular reference
- From: Isaque Galdino de Araujo <igaldino src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-notes/gnome-3-28] manager: Fix circular reference
- Date: Mon, 7 May 2018 02:47:46 +0000 (UTC)
commit 05be4440ae6f1bf6bc3ea66c5a2b95ad461fc413
Author: Isaque Galdino <igaldino gmail com>
Date: Wed Apr 18 00:16:28 2018 -0300
manager: Fix circular reference
Manager object keeps a list of Provider objects and the latter was also
keeping hard references to the former. That was also true for Item
objects.
This patch fix that, keeping only pointers to Manager in Provider and
Item objects.
src/libbiji/biji-item.c | 5 +----
src/libbiji/provider/biji-provider.c | 5 +----
2 files changed, 2 insertions(+), 8 deletions(-)
---
diff --git a/src/libbiji/biji-item.c b/src/libbiji/biji-item.c
index ae8aa7e..e691a37 100644
--- a/src/libbiji/biji-item.c
+++ b/src/libbiji/biji-item.c
@@ -63,7 +63,7 @@ biji_item_set_property (GObject *object,
switch (property_id)
{
case PROP_BOOK:
- priv->manager = g_value_dup_object (value);
+ priv->manager = g_value_get_object (value);
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
@@ -151,9 +151,6 @@ biji_item_class_init (BijiItemClass *klass)
static void
biji_item_finalize (GObject *object)
{
- BijiItemPrivate *priv = biji_item_get_instance_private (BIJI_ITEM (object));
- g_clear_object (&priv->manager);
-
G_OBJECT_CLASS (biji_item_parent_class)->finalize (object);
}
diff --git a/src/libbiji/provider/biji-provider.c b/src/libbiji/provider/biji-provider.c
index 0b51e89..8e41bcb 100644
--- a/src/libbiji/provider/biji-provider.c
+++ b/src/libbiji/provider/biji-provider.c
@@ -111,9 +111,6 @@ biji_provider_load_archives (BijiProvider *provider)
static void
biji_provider_finalize (GObject *object)
{
- BijiProviderPrivate *priv = biji_provider_get_instance_private (BIJI_PROVIDER (object));
- g_clear_object (&priv->manager);
-
G_OBJECT_CLASS (biji_provider_parent_class)->finalize (object);
}
@@ -156,7 +153,7 @@ biji_provider_set_property (GObject *object,
switch (property_id)
{
case PROP_BOOK:
- priv->manager = g_value_dup_object (value);
+ priv->manager = g_value_get_object (value);
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]