summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDamien Laniel <dlaniel@entrouvert.com>2008-05-22 08:06:13 +0000
committerDamien Laniel <dlaniel@entrouvert.com>2008-05-22 08:06:13 +0000
commite741a80a7fd35e91c522f97d9082e9f42784d115 (patch)
tree03e851773a8d727f3d78bee94d80399da11351f6
parentda28448769c76d01a201d90ead242a2fef21203a (diff)
downloadlasso-e741a80a7fd35e91c522f97d9082e9f42784d115.tar.gz
lasso-e741a80a7fd35e91c522f97d9082e9f42784d115.tar.xz
lasso-e741a80a7fd35e91c522f97d9082e9f42784d115.zip
added some more missing unreference
-rw-r--r--lasso/id-wsf-2.0/discovery.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/lasso/id-wsf-2.0/discovery.c b/lasso/id-wsf-2.0/discovery.c
index 747753c3..9932e8d8 100644
--- a/lasso/id-wsf-2.0/discovery.c
+++ b/lasso/id-wsf-2.0/discovery.c
@@ -523,6 +523,8 @@ lasso_idwsf2_discovery_build_epr(LassoIdWsf2DiscoRequestedService *service,
svcMD = svcMDs->data;
if (svcMD == NULL || svcMD->ServiceContext == NULL || svcMD->ServiceContext->data == NULL) {
+ g_list_foreach(svcMDs, (GFunc)lasso_node_destroy, NULL);
+ g_list_free(svcMDs);
return NULL;
}
@@ -581,6 +583,7 @@ lasso_idwsf2_discovery_build_epr(LassoIdWsf2DiscoRequestedService *service,
provider->private_data->encryption_sym_key_type));
if (encrypted_element != NULL) {
assertion->Subject->EncryptedID = encrypted_element;
+ g_object_unref(assertion->Subject->NameID);
assertion->Subject->NameID = NULL;
}
}
@@ -598,7 +601,11 @@ lasso_idwsf2_discovery_build_epr(LassoIdWsf2DiscoRequestedService *service,
}
epr->Metadata = metadata;
-
+
+ /* Free resources */
+ g_list_foreach(svcMDs, (GFunc)lasso_node_destroy, NULL);
+ g_list_free(svcMDs);
+
return epr;
}