Enlightenment CVS committal

Author  : chaos
Project : e17
Module  : proto

Dir     : e17/proto/entropy/src/plugins


Modified Files:
        filesystem.c 


Log Message:
* Start to use evfs 'client_id' tags, to track event returns properly.  This is 
much cleaner/safer

===================================================================
RCS file: /cvs/e/e17/proto/entropy/src/plugins/filesystem.c,v
retrieving revision 1.64
retrieving revision 1.65
diff -u -3 -r1.64 -r1.65
--- filesystem.c        9 Apr 2006 12:41:44 -0000       1.64
+++ filesystem.c        13 Apr 2006 13:17:50 -0000      1.65
@@ -245,10 +245,10 @@
       char *pos;
 
       printf("Looking for callers for dir list for: '%s'\n", 
data->resp_command.file_command.files[0]->path);
-      calling_request = ecore_hash_get (evfs_dir_requests, 
data->resp_command.file_command.files[0]->path);
+      calling_request = ecore_hash_get (evfs_dir_requests, 
(long*)data->resp_command.client_identifier);
       if (calling_request) {
             /*Remove from directory requesters*/
-             ecore_hash_remove(evfs_dir_requests, 
data->resp_command.file_command.files[0]->path);
+             ecore_hash_remove(evfs_dir_requests, 
(long*)data->resp_command.client_identifier );
                
              
              ecore_list_append(file_list, calling_request);
@@ -527,7 +527,7 @@
   folder_monitor_hash =
     ecore_hash_new (ecore_direct_hash, ecore_direct_compare);
   stat_request_hash = ecore_hash_new (ecore_str_hash, ecore_str_compare);
-  evfs_dir_requests = ecore_hash_new (ecore_str_hash, ecore_str_compare);
+  evfs_dir_requests = ecore_hash_new (ecore_direct_hash, ecore_direct_compare);
   file_copy_hash = ecore_hash_new (ecore_str_hash, ecore_str_compare);
 
   /*Connect to evfs*/
@@ -746,6 +746,7 @@
   else {                       /*Not a posix call for a dir list - don't use 
our local optim function */
     entropy_file_request *new_request; /*We need to make a copy of the request 
object
                                           because the original will be 
destroyed */
+    long request_id;
 
     entropy_generic_file *source_file;
     char *uri;
@@ -768,7 +769,7 @@
     printf ("URI: %s\n", uri);
 
     path = evfs_parse_uri (uri);
-    evfs_client_dir_list (con, path->files[0]);
+    request_id = evfs_client_dir_list (con, path->files[0]);
 
 
     new_request = entropy_malloc (sizeof (entropy_file_request));
@@ -791,15 +792,7 @@
     new_request->requester = request->requester;
     new_request->file_type = request->file_type;
 
-    /*If it is a drilldown request - we must be at the root.
-     *Anything else, and we must be an 'embedded' request with a parent*/
-    if (request->drill_down) {
-      ecore_hash_set (evfs_dir_requests, "/", new_request);
-    }
-    else {
-      printf("Setting dir request hash to '%s'\n", path->files[0]->path);
-      ecore_hash_set (evfs_dir_requests, path->files[0]->path, new_request);
-    }
+    ecore_hash_set (evfs_dir_requests,(long*)request_id, new_request);
 
     entropy_free (uri);
 




-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to