The current implementation of ecore_dlist_remove_destroy() (see
e17/libs/ecore/src/lib/ecore/ecore_list.c) simply calls the same function for
singly linked-list. This is the incorrect behaviour because the ecore_list_
implementation does not deal with the "previous" pointer correctly. I propose
that the current function should be replaced with:
void ecore_dlist_remove_destroy(Ecore_Dlist * list)
{
void *data;
CHECK_PARAM_POINTER_RETURN("list", list, FALSE);
data = ecore_dlist_remove(list);
if (list->free_func)
list->free_func(data);
return TRUE;
}
Dylan Shell.
-------------------------------------------------------
This SF.Net email is sponsored by the 'Do More With Dual!' webinar happening
July 14 at 8am PDT/11am EDT. We invite you to explore the latest in dual
core and dual graphics technology at this free one hour event hosted by HP,
AMD, and NVIDIA. To register visit http://www.hp.com/go/dualwebinar
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel