Enlightenment CVS committal Author : sebastid Project : e17 Module : apps/e
Dir : e17/apps/e/src/bin Modified Files: e_apps.c Log Message: An app without a valid exe should be considered as non existant. =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_apps.c,v retrieving revision 1.78 retrieving revision 1.79 diff -u -3 -r1.78 -r1.79 --- e_apps.c 27 Sep 2005 03:57:03 -0000 1.78 +++ e_apps.c 28 Sep 2005 01:55:03 -0000 1.79 @@ -373,7 +373,7 @@ e_app_fields_fill(a, path); /* no exe field.. not valid. drop it */ - if (!a->exe) + if ((!a->exe) || (!ecore_file_app_installed(a->exe))) goto error; } else @@ -1368,24 +1368,41 @@ { if (event == ECORE_FILE_EVENT_MODIFIED) { - E_App *a2; + E_App *a; - a2 = _e_app_subapp_file_find(app, file); - if (a2) + a = _e_app_subapp_file_find(app, file); + if (a) { Evas_List *l; - e_app_fields_empty(a2); - e_app_fields_fill(a2, path); - _e_app_change(a2, E_APP_CHANGE); + e_app_fields_empty(a); + e_app_fields_fill(a, path); + if ((!a->exe) || (!ecore_file_app_installed(a->exe))) + { + a->deleted = 1; + for (l = a->references; l;) + { + E_App *a2; - for (l = a2->references; l; l = l->next) + a2 = l->data; + l = l->next; + if (a2->parent) + _e_app_subdir_rescan(a2->parent); + } + _e_app_subdir_rescan(app); + } + else { - E_App *a3; + _e_app_change(a, E_APP_CHANGE); - a3 = l->data; - if (_e_app_copy(a3, a2)) - _e_app_change(a3, E_APP_CHANGE); + for (l = a->references; l; l = l->next) + { + E_App *a2; + + a2 = l->data; + if (_e_app_copy(a2, a)) + _e_app_change(a2, E_APP_CHANGE); + } } } } ------------------------------------------------------- This SF.Net email is sponsored by: Power Architecture Resource Center: Free content, downloads, discussions, and more. http://solutions.newsforge.com/ibmarch.tmpl _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs