Enlightenment CVS committal

Author  : sebastid
Project : e17
Module  : apps/e

Dir     : e17/apps/e/src/bin


Modified Files:
        e_apps.c 


Log Message:
Fix

===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_apps.c,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -3 -r1.22 -r1.23
--- e_apps.c    23 Feb 2005 11:54:29 -0000      1.22
+++ e_apps.c    24 Feb 2005 09:54:58 -0000      1.23
@@ -84,6 +84,15 @@
        ecore_event_handler_del(_e_apps_exit_handler);
        _e_apps_exit_handler = NULL;
      }
+     {
+       Evas_List *l;
+       for (l = _e_apps_list; l; l = l->next)
+         {
+            E_App *a;
+            a = l->data;
+            printf("BUG: %d %s\n", E_OBJECT(a)->references, a->path);
+         }
+     }
    return 1;
 }
 
@@ -349,9 +358,16 @@
        
        a2 = a->subapps->data;
        a->subapps = evas_list_remove_list(a->subapps, a->subapps);
-       /* Only remove the parent if it is us. */
        if (a2->parent == a)
-         a2->parent = NULL;
+         {
+            /* If we are the parent, remove us */
+            a2->parent = NULL;
+         }
+       else
+         {
+            /* We have a reference */
+            a2->references = evas_list_remove(a2->references, a);
+         }
        e_object_unref(E_OBJECT(a2));
      }
    for (l = a->references; l; l = l->next)
@@ -359,7 +375,8 @@
        E_App *a2;
 
        a2 = l->data;
-       a2->subapps = evas_list_remove(a2->subapps, a);
+       if (a2)
+         a2->subapps = evas_list_remove(a2->subapps, a);
      }
    evas_list_free(a->references);
 
@@ -719,6 +736,8 @@
           case ECORE_FILE_EVENT_CREATED:
              /* If a file is created, wait for the directory change to update
               * the eapp. */
+             /* FIXME: If in a main repository, check if someone else wants 
this
+              * file! */
              break;
           case ECORE_FILE_EVENT_DELETED:
              /* If something is deleted, mark it as deleted
@@ -782,6 +801,8 @@
        if (!a2)
          {
             /* Do we have a reference? */
+            /* FIXME: Keep the reference, or check if a file
+             * has appeared locally? */
             Evas_List *pl;
 
             pl = _e_apps_repositories;
@@ -795,6 +816,7 @@
        if (!a2)
          {
             /* If we still haven't found it, it is new! */
+            snprintf(buf, sizeof(buf), "%s/%s", app->path, s);
             a2 = e_app_new(buf, 1);
             if (a2)
               {
@@ -857,6 +879,7 @@
             changes = evas_list_append(changes, ch);
          }
      }
+   /* FIXME: We only need to tell about order changes if there are! */
    evas_list_free(app->subapps);
    app->subapps = subapps;
    ch = calloc(1, sizeof(E_App_Change_Info));




-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to