Index: /trunk/zoo-project/zoo-kernel/request_parser.c
===================================================================
--- /trunk/zoo-project/zoo-kernel/request_parser.c	(revision 625)
+++ /trunk/zoo-project/zoo-kernel/request_parser.c	(revision 626)
@@ -158,4 +158,5 @@
     if (inputs_as_text == NULL)
       {
+	free(cursor_input);
 	return errorException (*main_conf, _("Unable to allocate memory."),
 			       "InternalError", NULL);
@@ -168,4 +169,5 @@
 	if (inputs_as_text[i] == NULL)
 	  {
+	    free(cursor_input);
 	    return errorException (*main_conf, _("Unable to allocate memory."),
 				   "InternalError", NULL);
@@ -203,4 +205,5 @@
 		if (tmpmaps == NULL)
 		  {
+		    free(cursor_input);
 		    return errorException (*main_conf,
 					   _("Unable to allocate memory."),
@@ -259,4 +262,5 @@
 				 ("Unable to find a valid protocol to download the remote file %s"),
 				 tmpv1 + 1);
+			free(cursor_input);
 			return errorException (*main_conf, emsg, "InternalError", NULL);
 		      }
@@ -266,6 +270,7 @@
 			  (&*main_conf, &tmpmaps->content, hInternet, tmpx2) < 0)
 			{
+			  free(cursor_input);
 			  return errorException (*main_conf, "Unable to fetch any ressource", "InternalError", NULL);
-			  }
+			}
 		      }
 		    free (tmpx2);
@@ -290,4 +295,5 @@
 			     elem) < 0)
 			  {
+			    free(cursor_input);
 			    return errorException (*main_conf, "Unable to append maps", "InternalError", NULL);
 			  }
@@ -304,4 +310,5 @@
       }
     free (inputs_as_text);
+    free(cursor_input);
   }
   return 1;
@@ -339,4 +346,5 @@
       if (outputs_as_text == NULL)
 	{
+	  free(cursor_output);
 	  return errorException (*main_conf, _("Unable to allocate memory"),
 				 "InternalError", NULL);
@@ -349,4 +357,5 @@
 	  if (outputs_as_text[i] == NULL)
 	    {
+	      free(cursor_output);
 	      return errorException (*main_conf, _("Unable to allocate memory"),
 				     "InternalError", NULL);
@@ -373,4 +382,5 @@
 		      if (tmp_output == NULL)
 			{
+			  free(cursor_output);
 			  return errorException (*main_conf,
 						 _
@@ -413,4 +423,5 @@
 	}
       free (outputs_as_text);
+      free(cursor_output);
     }
   return 1;
