Index: /trunk/zoo-project/zoo-kernel/zoo_service_loader.c
===================================================================
--- /trunk/zoo-project/zoo-kernel/zoo_service_loader.c	(revision 497)
+++ /trunk/zoo-project/zoo-kernel/zoo_service_loader.c	(revision 498)
@@ -1840,7 +1840,7 @@
 		  int buffersize;
 		  xmlNodePtr cur5=cur4->children;
-		  while(cur5!=NULL &&cur5->type!=XML_ELEMENT_NODE && cur5->type!=XML_CDATA_SECTION_NODE)
+		  while(cur5!=NULL && cur5->type!=XML_ELEMENT_NODE && cur5->type!=XML_CDATA_SECTION_NODE)
 		    cur5=cur5->next;
-		  if(cur5->type!=XML_CDATA_SECTION_NODE){
+		  if(cur5!=NULL && cur5->type!=XML_CDATA_SECTION_NODE){
 		    xmlDocSetRootElement(doc1,cur5);
 		    xmlDocDumpFormatMemoryEnc(doc1, &mv, &buffersize, "utf-8", 1);
@@ -1851,6 +1851,8 @@
 		  }
 		}
-		addToMap(tmpmaps->content,"value",(char*)mv);
-		xmlFree(mv);
+		if(mv!=NULL){
+		  addToMap(tmpmaps->content,"value",(char*)mv);
+		  xmlFree(mv);
+		}
 	      }else{
 		xmlChar* tmp=xmlNodeListGetRawString(doc,cur4->xmlChildrenNode,0);
