Do not output error when trying to parse XML data
[cascardo/atompub.git] / atom / entry.c
index 8df08d9..069207b 100644 (file)
@@ -23,8 +23,6 @@
 #include <libxml/tree.h>
 #include <libxml/parser.h>
 
-#define ATOM_NAMESPACE "http://www.w3.org/2005/Atom"
-
 struct _atom_entry
 {
   xmlDocPtr doc;
@@ -54,7 +52,8 @@ atom_entry_new_data_len (char *data, size_t len)
   xmlNodePtr root;
   xmlNodePtr child;
   entry = g_slice_new0 (AtomEntry);
-  entry->doc = xmlReadMemory (data, len, NULL, NULL, XML_PARSE_RECOVER);
+  entry->doc = xmlReadMemory (data, len, NULL, NULL,
+                              XML_PARSE_RECOVER | XML_PARSE_NOERROR);
   if (entry->doc == NULL ||
       (root = xmlDocGetRootElement (entry->doc)) == NULL)
     {
@@ -167,6 +166,6 @@ xmlNodePtr
 atom_entry_to_xmlnode (AtomEntry *entry)
 {
   if (entry->doc)
-    return xmlDocGetRootElement (entry->doc);
+    return xmlCopyNodeList (xmlDocGetRootElement (entry->doc));
   return NULL;
 }