Hi, Does anyone knows if the function eina_inlist_remove() should return NULL if the item trying to be removed isn't inserted on the list? (ie. item->prev == item->next == item->last == NULL)
Taking a look at the code I saw that if that item isn't inside any list, the item->next is returned (line 262), but item->next is NULL. This is causing me some trouble because when I call ecore_evas_free() on an ecore_evas_buffer that has an added ecore_evas_object_image on it, the function _ecore_evas_free() is called first on the sub_ecore_evas and then on the ecore_evas_buffer. But the sub_ecore_evas isn't added to the ecore_evases inlist (inside ecore_evas_buffer.c), then the eina_inlist_remove() on the line 32 (same file) returns NULL. Later when the _ecore_evas_free() is finally called on the ecore_evas_buffer (the first one), the ecore_evases inlist points to NULL, causing a safety check fail. Maybe the eina_inlist_remove() function should just return the list itself if the item isn't inside any list, or the ecore_evas_object_image_new() function should add the sub ecore_evas that has been just created to the ecore_evases inlist. Any ideas? Regards, -- Rafael Antognolli ProFUSION embedded systems http://profusion.mobi ------------------------------------------------------------------------------ Enter the BlackBerry Developer Challenge This is your chance to win up to $100,000 in prizes! For a limited time, vendors submitting new applications to BlackBerry App World(TM) will have the opportunity to enter the BlackBerry Developer Challenge. See full prize details at: http://p.sf.net/sfu/Challenge _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel