Ahh super !! Was just about to dig into this, lol. Good Job !! :)

dh

hannes.janet...@gmail.com 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,
> hannes.janet...@gmail.com<hannes.janet...@googlemail.com> 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<cpmicha...@comcast.net> 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
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to