Enlightenment CVS committal Author : rbdpngn Project : e17 Module : libs/ewl
Dir : e17/libs/ewl/src/lib Modified Files: ewl_misc.c Log Message: Free windows and their contents before tearing down edje. =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/ewl/src/lib/ewl_misc.c,v retrieving revision 1.7 retrieving revision 1.8 diff -u -3 -r1.7 -r1.8 --- ewl_misc.c 28 Mar 2005 07:04:28 -0000 1.7 +++ ewl_misc.c 26 May 2005 23:02:24 -0000 1.8 @@ -173,6 +173,7 @@ } ewl_embed_list = ecore_list_new(); + ecore_list_set_free_cb(ewl_embed_list, ewl_widget_destroy); ewl_window_list = ecore_list_new(); ecore_idle_enterer_add(ewl_idle_render, NULL); @@ -192,20 +193,31 @@ if (--_ewl_init_count) DRETURN_INT(_ewl_init_count, DLEVEL_STABLE); + /* + * Destroy all existing widgets. + */ + if (ewl_embed_list) + ecore_list_destroy(ewl_embed_list); + ewl_garbage_collect(); + + /* + * Shut down the various EWL subsystems cleanly. + */ ewl_callbacks_shutdown(); ewl_theme_shutdown(); ewl_config_shutdown(); + /* + * Free internal accounting lists. + */ + if (ewl_window_list) + ecore_list_destroy(ewl_window_list); ecore_list_destroy(configure_list); ecore_list_destroy(realize_list); ecore_list_destroy(destroy_list); ecore_list_destroy(free_evas_list); ecore_list_destroy(free_evas_object_list); ecore_list_destroy(child_add_list); - if (ewl_embed_list) - ecore_list_destroy(ewl_embed_list); - if (ewl_window_list) - ecore_list_destroy(ewl_window_list); edje_shutdown(); ------------------------------------------------------- This SF.Net email is sponsored by Yahoo. Introducing Yahoo! Search Developer Network - Create apps using Yahoo! Search APIs Find out how you can build Yahoo! directly into your own Applications - visit http://developer.yahoo.net/?fr=offad-ysdn-ostg-q22005 _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs