discomfitor pushed a commit to branch master.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=8814d3ad283d03d86d3c30b0537bca5bc28feda8

commit 8814d3ad283d03d86d3c30b0537bca5bc28feda8
Author: Mike Blumenkrantz <zm...@osg.samsung.com>
Date:   Tue Sep 23 13:12:02 2014 -0400

    client hooks should not continue to be called if the client has been deleted
---
 src/bin/e_client.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/bin/e_client.c b/src/bin/e_client.c
index c2748b5..cf597e1 100644
--- a/src/bin/e_client.c
+++ b/src/bin/e_client.c
@@ -321,6 +321,9 @@ _e_client_hook_call(E_Client_Hook_Point hookpoint, E_Client 
*ec)
      {
         if (ch->delete_me) continue;
         ch->func(ch->data, ec);
+        if ((hookpoint != E_CLIENT_HOOK_DEL) &&
+          e_object_is_del(E_OBJECT(ec)))
+          break;
      }
    _e_client_hooks_walking--;
    if ((_e_client_hooks_walking == 0) && (_e_client_hooks_delete > 0))

-- 


Reply via email to