diff options
| author | Frederic Peters <fpeters@entrouvert.com> | 2007-01-05 11:40:10 +0000 |
|---|---|---|
| committer | Frederic Peters <fpeters@entrouvert.com> | 2007-01-05 11:40:10 +0000 |
| commit | 41d6f7df6847f647744934dbdf72fa6cb4e37343 (patch) | |
| tree | 4708c435d147e40e338ce4cf49c9a95a676d192a /lasso/id-ff | |
| parent | 38e9d703915cb7bdef983afbd35c4ab1898a7a6f (diff) | |
memory management, avoid leaking xmlDoc*
Diffstat (limited to 'lasso/id-ff')
| -rw-r--r-- | lasso/id-ff/login.c | 1 | ||||
| -rw-r--r-- | lasso/id-ff/logout.c | 1 | ||||
| -rw-r--r-- | lasso/id-ff/name_registration.c | 1 | ||||
| -rw-r--r-- | lasso/id-ff/provider.c | 1 | ||||
| -rw-r--r-- | lasso/id-ff/server.c | 1 |
5 files changed, 5 insertions, 0 deletions
diff --git a/lasso/id-ff/login.c b/lasso/id-ff/login.c index ac33b14f..5169ae04 100644 --- a/lasso/id-ff/login.c +++ b/lasso/id-ff/login.c @@ -2029,6 +2029,7 @@ lasso_login_new_from_dump(LassoServer *server, const gchar *dump) doc = xmlParseMemory(dump, strlen(dump)); init_from_xml(LASSO_NODE(login), xmlDocGetRootElement(doc)); LASSO_PROFILE(login)->server = g_object_ref(server); + xmlFreeDoc(doc); return login; } diff --git a/lasso/id-ff/logout.c b/lasso/id-ff/logout.c index 006bb3a4..0de3942e 100644 --- a/lasso/id-ff/logout.c +++ b/lasso/id-ff/logout.c @@ -1132,6 +1132,7 @@ lasso_logout_new_from_dump(LassoServer *server, const char *dump) logout = lasso_logout_new(g_object_ref(server)); doc = xmlParseMemory(dump, strlen(dump)); init_from_xml(LASSO_NODE(logout), xmlDocGetRootElement(doc)); + xmlFreeDoc(doc); return logout; } diff --git a/lasso/id-ff/name_registration.c b/lasso/id-ff/name_registration.c index 7510cb46..75acbb6b 100644 --- a/lasso/id-ff/name_registration.c +++ b/lasso/id-ff/name_registration.c @@ -751,6 +751,7 @@ lasso_name_registration_new_from_dump(LassoServer *server, const char *dump) name_registration = lasso_name_registration_new(server); doc = xmlParseMemory(dump, strlen(dump)); init_from_xml(LASSO_NODE(name_registration), xmlDocGetRootElement(doc)); + xmlFreeDoc(doc); return name_registration; } diff --git a/lasso/id-ff/provider.c b/lasso/id-ff/provider.c index e012917f..b3ad0e17 100644 --- a/lasso/id-ff/provider.c +++ b/lasso/id-ff/provider.c @@ -897,6 +897,7 @@ lasso_provider_new_from_dump(const gchar *dump) provider = g_object_new(LASSO_TYPE_PROVIDER, NULL); doc = xmlParseMemory(dump, strlen(dump)); init_from_xml(LASSO_NODE(provider), xmlDocGetRootElement(doc)); + xmlFreeDoc(doc); lasso_provider_load_public_key(provider, LASSO_PUBLIC_KEY_SIGNING); lasso_provider_load_public_key(provider, LASSO_PUBLIC_KEY_ENCRYPTION); diff --git a/lasso/id-ff/server.c b/lasso/id-ff/server.c index fc0d2735..6895756e 100644 --- a/lasso/id-ff/server.c +++ b/lasso/id-ff/server.c @@ -176,6 +176,7 @@ lasso_server_load_affiliation(LassoServer *server, const gchar *filename) node = xmlDocGetRootElement(doc); if (node == NULL || node->ns == NULL) { + xmlFreeDoc(doc); return LASSO_XML_ERROR_NODE_NOT_FOUND; } |
