ecore: free futures which are still pending on shutdown

otherwise we are leaking a eina list.

This was discovered while running the elm_suite with CK_FORK=no, since
ecore and eina are init´ed and shutdown´ed, after the shutdown this list
points to freeed memory pools. So in the next testcase the list is
invalid and crashes. This fixes it with freeing the list on shutdown.
This commit is contained in:
Marcel Hollerbach 2016-10-13 10:27:06 +02:00
parent 45b103eb0a
commit f63ede4281
1 changed files with 6 additions and 0 deletions

View File

@ -1598,6 +1598,8 @@ ecore_main_fd_handler_active_set(Ecore_Fd_Handler *fd_handler,
void
_ecore_main_shutdown(void)
{
Efl_Future *future;
if (in_main_loop)
{
ERR("\n"
@ -1605,6 +1607,10 @@ _ecore_main_shutdown(void)
"*** Program may crash or behave strangely now.");
return;
}
EINA_LIST_FREE(_pending_futures, future)
efl_del(future);
while (fd_handlers)
{
Ecore_Fd_Handler *fdh;