summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFrederic Peters <fpeters@entrouvert.com>2005-05-16 10:57:59 +0000
committerFrederic Peters <fpeters@entrouvert.com>2005-05-16 10:57:59 +0000
commitedbbed086dae4e626984aa7f184f41163417aa1b (patch)
tree68d7b242c49185355b86e090fe8b072463333bef
parentebde5d5f2e88a9e0373ca1cc993121a6e411565a (diff)
fixed memory leak in loadDescriptor
-rw-r--r--lasso/id-ff/provider.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/lasso/id-ff/provider.c b/lasso/id-ff/provider.c
index 6ef63dac..d859bf3d 100644
--- a/lasso/id-ff/provider.c
+++ b/lasso/id-ff/provider.c
@@ -346,6 +346,7 @@ load_descriptor(xmlNode *xmlnode, GHashTable *descriptor, LassoProvider *provide
xmlNode *t;
GList *elements;
char *name;
+ xmlChar *value;
t = xmlnode->children;
while (t) {
@@ -368,7 +369,9 @@ load_descriptor(xmlNode *xmlnode, GHashTable *descriptor, LassoProvider *provide
name = g_strdup(t->name);
}
elements = g_hash_table_lookup(descriptor, name);
- elements = g_list_append(elements, g_strdup(xmlNodeGetContent(t)));
+ value = xmlNodeGetContent(t);
+ elements = g_list_append(elements, g_strdup(value));
+ xmlFree(value);
g_hash_table_insert(descriptor, name, elements);
t = t->next;
}