summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFrederic Peters <fpeters@entrouvert.com>2005-02-04 15:12:25 +0000
committerFrederic Peters <fpeters@entrouvert.com>2005-02-04 15:12:25 +0000
commit0869680575ff607e69ba25fb323aca4323d6826e (patch)
treeeeba13b5e640b3bd756fd2ffb0ec46729762f5b6
parentcef5e8352e751543034ee2c5aa0c259630fc67d9 (diff)
added tests to fix bug #407 and avoir similar ones
-rw-r--r--lasso/id-ff/identity.c6
-rw-r--r--lasso/id-ff/session.c6
-rw-r--r--lasso/xml/xml.c6
3 files changed, 18 insertions, 0 deletions
diff --git a/lasso/id-ff/identity.c b/lasso/id-ff/identity.c
index 4ba58bfb..3c1a320f 100644
--- a/lasso/id-ff/identity.c
+++ b/lasso/id-ff/identity.c
@@ -273,8 +273,14 @@ lasso_identity_new_from_dump(const gchar *dump)
LassoIdentity *identity;
xmlDoc *doc;
+ if (dump == NULL)
+ return NULL;
+
identity = lasso_identity_new();
doc = xmlParseMemory(dump, strlen(dump));
+ if (doc == NULL)
+ return NULL;
+
init_from_xml(LASSO_NODE(identity), xmlDocGetRootElement(doc));
xmlFreeDoc(doc);
diff --git a/lasso/id-ff/session.c b/lasso/id-ff/session.c
index 73045d13..d8d02894 100644
--- a/lasso/id-ff/session.c
+++ b/lasso/id-ff/session.c
@@ -446,8 +446,14 @@ lasso_session_new_from_dump(const gchar *dump)
LassoSession *session;
xmlDoc *doc;
+ if (dump == NULL)
+ return NULL;
+
session = lasso_session_new();
doc = xmlParseMemory(dump, strlen(dump));
+ if (doc == NULL)
+ return NULL;
+
init_from_xml(LASSO_NODE(session), xmlDocGetRootElement(doc));
xmlFreeDoc(doc);
diff --git a/lasso/xml/xml.c b/lasso/xml/xml.c
index ae49c326..53a69b63 100644
--- a/lasso/xml/xml.c
+++ b/lasso/xml/xml.c
@@ -626,7 +626,13 @@ lasso_node_new_from_dump(const char *dump)
LassoNode *node;
xmlDoc *doc;
+ if (dump == NULL)
+ return NULL;
+
doc = xmlParseMemory(dump, strlen(dump));
+ if (doc == NULL)
+ return NULL;
+
node = lasso_node_new_from_xmlNode(xmlDocGetRootElement(doc));
xmlFreeDoc(doc);
return node;