Ahh super !! Was just about to dig into this, lol. Good Job !! :) dh
[email protected] wrote: > ok, eina macro issue again. the object del function of e_module > modifies the list. going to fix it now > > On Fri, Sep 4, 2009 at 10:14 PM, > [email protected]<[email protected]> wrote: >> tried with just the default ones. ok there is more a system to it: >> exactly every second module is not unloaded :) >> try this e_module.c yourself. it prints out which modules are in the >> list and which become freed. ok the reason why would be worth >> investigating. just my stack is pretty overloaded atm. >> http://pastie.org/private/9pf6c4us8vea0svfvjr9xq >> >> On Fri, Sep 4, 2009 at 9:50 PM, Christopher >> Michael<[email protected]> wrote: >>> What modules are you running ? I searched all the existing code in both >>> E's modules, and E-MODULES-EXTRA and did not find where anything is >>> modifying the list... >>> >>> dh >>> >>> Enlightenment SVN wrote: >>>> Log: >>>> e17:shutdown all modules >>>> >>>> Author: jeffdameth >>>> Date: 2009-09-04 12:43:10 -0700 (Fri, 04 Sep 2009) >>>> New Revision: 42262 >>>> >>>> Modified: >>>> trunk/e/src/bin/e_module.c >>>> >>>> Modified: trunk/e/src/bin/e_module.c >>>> =================================================================== >>>> --- trunk/e/src/bin/e_module.c 2009-09-04 19:27:12 UTC (rev 42261) >>>> +++ trunk/e/src/bin/e_module.c 2009-09-04 19:43:10 UTC (rev 42262) >>>> @@ -37,7 +37,8 @@ >>>> e_module_shutdown(void) >>>> { >>>> E_Module *m; >>>> - >>>> + Eina_List *l; >>>> + >>>> #ifdef HAVE_VALGRIND >>>> /* do a leak check now before we dlclose() all those plugins, cause >>>> * that means we won't get a decent backtrace to leaks in there >>>> @@ -45,10 +46,15 @@ >>>> VALGRIND_DO_LEAK_CHECK >>>> #endif >>>> >>>> - _e_modules = eina_list_reverse(_e_modules); >>>> - >>>> - EINA_LIST_FREE(_e_modules, m) >>>> + // whats was this for? modules should not depend on each others load >>>> order >>>> + // _e_modules = eina_list_reverse(_e_modules); >>>> + >>>> + /* FIXME there seems to be a module that modifies _e_modules here >>>> + * dont use EINA_LIST_FREE until solved! */ >>>> + EINA_LIST_FOREACH(_e_modules, l, m) >>>> { >>>> + printf("shutdown module: %s\n", m->name); >>>> + >>>> if (m && m->enabled && !m->error) >>>> { >>>> m->func.save(m); >>>> @@ -58,6 +64,10 @@ >>>> e_object_del(E_OBJECT(m)); >>>> } >>>> >>>> + if (_e_modules) >>>> + eina_list_free(_e_modules); >>>> + _e_modules = NULL; >>>> + >>>> return 1; >>>> } ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ enlightenment-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
