Log fatal instead of crashing hard on wrongly configured metadata element.
authorDennis Schafroth <dennis@indexdata.com>
Thu, 20 May 2010 13:14:28 +0000 (15:14 +0200)
committerDennis Schafroth <dennis@indexdata.com>
Thu, 20 May 2010 13:14:28 +0000 (15:14 +0200)
src/session.c

index 4910ea9..0c914ca 100644 (file)
@@ -981,7 +981,10 @@ static int get_mergekey_from_doc(xmlDoc *doc, xmlNode *root, const char *name,
         if (!strcmp((const char *) n->name, "metadata"))
         {
             xmlChar *type = xmlGetProp(n, (xmlChar *) "type");
-            if (!strcmp(name, (const char *) type))
+            if (type == NULL) {
+                yaz_log(YLOG_FATAL, "Missing type attribute on metadata element. Skipping!");
+            }
+            else if (!strcmp(name, (const char *) type))
             {
                 xmlChar *value = xmlNodeListGetString(doc, n->children, 1);
                 if (value)