diff options
author | Daniel P. Berrange <berrange@redhat.com> | 2010-08-13 13:22:40 -0400 |
---|---|---|
committer | Daniel P. Berrange <berrange@redhat.com> | 2010-08-25 15:25:30 +0100 |
commit | 4c427ba3b30442d5f9f8b7f321f243704455d66a (patch) | |
tree | 543b22f2c71f1b094b50ab83cea998ffe9c53d23 /osinfo/osinfo_entity.c | |
parent | 5b91c4f6f19eb76e1b0a864fe3eb122ebb832bd5 (diff) | |
download | libosinfo-4c427ba3b30442d5f9f8b7f321f243704455d66a.tar.gz |
Remove 'db' property from entity object to avoid circular reference
The OsinfoDb object holds a reference to every OsinfoEntity.
If the OsinfoEntity also holds a back-reference to OsinfoDb
then no memory will ever be freed. The back-reference is
not used in the code, so just remove it
* osinfo/osinfo_common.h, osinfo/osinfo_dataread.c,
osinfo/osinfo_entity.c: Remove back-reference to the
OsinfoDb object from OsinfoEntity
Diffstat (limited to 'osinfo/osinfo_entity.c')
-rw-r--r-- | osinfo/osinfo_entity.c | 14 |
1 files changed, 0 insertions, 14 deletions
diff --git a/osinfo/osinfo_entity.c b/osinfo/osinfo_entity.c index 0fd8c59..dce265a 100644 --- a/osinfo/osinfo_entity.c +++ b/osinfo/osinfo_entity.c @@ -10,7 +10,6 @@ enum OSI_ENTITY_PROPERTIES { OSI_ENTITY_PROP_0, OSI_ENTITY_ID, - OSI_DB_PTR }; static void @@ -27,9 +26,6 @@ osinfo_entity_set_property (GObject *object, g_free(self->priv->id); self->priv->id = g_value_dup_string (value); break; - case OSI_DB_PTR: - self->priv->db = g_value_get_pointer (value); - break; default: /* We don't have any other property... */ G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec); @@ -50,9 +46,6 @@ osinfo_entity_get_property (GObject *object, case OSI_ENTITY_ID: g_value_set_string (value, self->priv->id); break; - case OSI_DB_PTR: - g_value_set_pointer(value, self->priv->db); - break; default: /* We don't have any other property... */ G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec); @@ -90,13 +83,6 @@ osinfo_entity_class_init (OsinfoEntityClass *klass) g_object_class_install_property (g_klass, OSI_ENTITY_ID, pspec); - pspec = g_param_spec_pointer ("db", - "Db pointer", - "Contains backpointer to libosinfo db object.", - G_PARAM_CONSTRUCT_ONLY | G_PARAM_READWRITE); - g_object_class_install_property (g_klass, - OSI_DB_PTR, - pspec); g_klass->finalize = osinfo_entity_finalize; g_type_class_add_private (klass, sizeof (OsinfoEntityPrivate)); |