summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFrederic Peters <fpeters@entrouvert.com>2004-12-30 20:04:44 +0000
committerFrederic Peters <fpeters@entrouvert.com>2004-12-30 20:04:44 +0000
commit1206801205f7fb4f61720cd804d94bc2f744338f (patch)
tree6c17ccfa94637044d1102bff3e0b15702037ea5a
parent4f8d34a9eee50fdf7513c149a0e8dd58157e4b73 (diff)
memory management for #LassoIdentity and #LassoSession (partial)
-rw-r--r--lasso/id-ff/identity.c5
-rw-r--r--lasso/id-ff/session.c9
2 files changed, 10 insertions, 4 deletions
diff --git a/lasso/id-ff/identity.c b/lasso/id-ff/identity.c
index ce5143ca..d63f7213 100644
--- a/lasso/id-ff/identity.c
+++ b/lasso/id-ff/identity.c
@@ -181,8 +181,8 @@ dispose(GObject *object)
debug("Identity object 0x%p disposed ...", identity);
- /* XXX: here or in finalize ?
- * g_hash_table_destroy(identity->federations); */
+ g_hash_table_destroy(identity->federations);
+ identity->federations = NULL;
G_OBJECT_CLASS(parent_class)->dispose(object);
}
@@ -193,6 +193,7 @@ finalize(GObject *object)
LassoIdentity *identity = LASSO_IDENTITY(object);
debug("Identity object 0x%p finalized ...", identity);
+ g_free(identity->private_data);
identity->private_data = NULL;
G_OBJECT_CLASS(parent_class)->finalize(object);
}
diff --git a/lasso/id-ff/session.c b/lasso/id-ff/session.c
index 46e28f96..f7cca3ff 100644
--- a/lasso/id-ff/session.c
+++ b/lasso/id-ff/session.c
@@ -323,10 +323,15 @@ dispose(GObject *object)
debug("Session object 0x%p disposed ...", session);
- /* XXX: here or not ?
+#if 0 /* XXX: disabled; memory management problem somewhere */
g_hash_table_destroy(session->assertions);
session->assertions = NULL;
- */
+#endif
+ g_hash_table_destroy(session->private_data->status);
+ session->private_data->status = NULL;
+ g_list_free(session->private_data->providerIDs);
+ session->private_data->providerIDs = NULL;
+
G_OBJECT_CLASS(parent_class)->dispose(object);
}