Index: trunk/zoo-project/zoo-kernel/request_parser.c
===================================================================
--- trunk/zoo-project/zoo-kernel/request_parser.c	(revision 869)
+++ trunk/zoo-project/zoo-kernel/request_parser.c	(revision 870)
@@ -924,6 +924,16 @@
 				    tmpmaps->content =
 				      createMap (list[l], (char *) val);
+				  xmlFree (val);
 				}
-			      xmlFree (val);
+			      else{
+				if(l==0){
+				  if (tmpmaps->content != NULL)
+				    addToMap (tmpmaps->content, list[l],
+					      "string");
+				  else
+				    tmpmaps->content =
+				      createMap (list[l],"string");
+				}
+			      }
 			      free (list[l]);
 			    }
@@ -950,6 +960,6 @@
 				      tmpmaps->content =
 					createMap (coms[l], (char *) val);
+				    xmlFree (val);
 				  }
-				xmlFree (val);
 			      }
 			  }
@@ -1032,5 +1042,6 @@
 			      if (cur5 != NULL
 				  && cur5->type == XML_CDATA_SECTION_NODE){
-				xmlFree(mv);
+				if(mv!=NULL)
+				  xmlFree(mv);
 				mv=xmlStrdup(cur5->content);
 			      }
