davemds pushed a commit to branch master.

http://git.enlightenment.org/bindings/python/python-efl.git/commit/?id=02f7eb07dd55f482e285a6d2c107a8772e03ac22

commit 02f7eb07dd55f482e285a6d2c107a8772e03ac22
Author: Dave Andreoli <[email protected]>
Date:   Mon Aug 8 17:08:53 2016 +0200

    dbus: fix watch cleanups
    
    EINA_LIST_FREE is wrong here, because the handler is already
    removed from the list inside e_dbus_fd_handler_del.
    Use EINA_LIST_FOREACH_SAFE to be more correct
---
 efl/dbus_mainloop/e_dbus.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/efl/dbus_mainloop/e_dbus.c b/efl/dbus_mainloop/e_dbus.c
index d02baa3..9829ca3 100644
--- a/efl/dbus_mainloop/e_dbus.c
+++ b/efl/dbus_mainloop/e_dbus.c
@@ -329,9 +329,10 @@ e_dbus_connection_free(void *data)
    E_DBus_Connection *cd = data;
    E_DBus_Handler_Data *hd;
    Ecore_Timer *timer;
+   Eina_List *l, *ll;
    DBG("e_dbus_connection free!");
 
-   EINA_LIST_FREE(cd->fd_handlers, hd)
+   EINA_LIST_FOREACH_SAFE(cd->fd_handlers, l, ll, hd)
       e_dbus_fd_handler_del(hd);
 
    EINA_LIST_FREE(cd->timeouts, timer)

-- 


Reply via email to