Index: mouse.c
===================================================================
--- mouse.c	(revision 481)
+++ mouse.c	(revision 482)
@@ -17,8 +17,12 @@
 
 void raydium_mouse_move(int x, int y)
 {
-if(raydium_mouse_x!=x || raydium_mouse_y!=y)
+static signed char first=1;
+if(raydium_mouse_x!=x || raydium_mouse_y!=y || first)
+    {
     glutWarpPointer(x,y);
+    first=0;
+    }
 }
 
 signed char raydium_mouse_isvisible(void)
$file=rawurldecode($file);
 $file=str_replace("/","",$file);
 $file=$data_dir.$file;
 
+if($type=="listRepos")
+    {
+    if($file==$data_dir)
+	$file="$data_dir/*";
+    foreach((array)glob($file) as $file)
+	{
+	if($file[0]!='.')
+	    echo trim(str_replace("/","",substr($file,strlen($data_dir))))."\n";
+	}
+    return;
+    }
+
+// For all next operations, consider $file as mandatory ...
+if($file=="") return;
+
 if($type=="putGzip")
 {
 if(!$upload_accept)
@@ -133,5 +149,5 @@
 }
 } // end main()
 
-main($file,$type,$username,$password,$data);
-?>
\ No newline at end of file
+main($_GET["file"],$_GET["type"],$_GET["username"],$_GET["password"],$_GET["data"]);
+?>