Index: branches/branch-1.2/zoo-kernel/service_internal.c
===================================================================
--- branches/branch-1.2/zoo-kernel/service_internal.c	(revision 301)
+++ branches/branch-1.2/zoo-kernel/service_internal.c	(revision 307)
@@ -1587,5 +1587,5 @@
 	else{
 	  if(strncmp(tmp2->value,"text/xml",8)==0 ||
-	     strncmp(tmp2->value,"application/vnd.google-earth.kml",32)!=0){
+	     strncmp(tmp2->value,"application/vnd.google-earth.kml",32)==0){
 	    xmlDocPtr doc =
 	      xmlParseMemory(BAD_CAST toto->value,strlen(BAD_CAST toto->value));
@@ -1813,6 +1813,8 @@
 	    else if(strcasecmp(mtype->value,"application/json")==0)
 	      ext=createMap("extension","js");
-	    else if(strncmp(mtype->value,"application/vnd.google-earth.kml",32)!=0)
+	    else if(strncmp(mtype->value,"application/vnd.google-earth.kml",32)==0)
 	      ext=createMap("extension","kml");
+	    else if(strncmp(mtype->value,"image/",6)==0) 
+	      ext=createMap("extension",strstr(mtype->value,"/")+1); 
 	    else
 	      ext=createMap("extension","txt");
