summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Blumenkrantz <zmike@osg.samsung.com>2014-09-23 13:12:02 -0400
committerMike Blumenkrantz <zmike@osg.samsung.com>2014-09-23 13:18:01 -0400
commit4374a04e2e6e1d4e5b0c1a12d48e5be66e367e42 (patch)
tree2357a79ec18d6fedf7a44bc23545316b367ba000
parentd4e289727a2df6c9c52e17d15c91713313894218 (diff)
client hooks should not continue to be called if the client has been deleted
-rw-r--r--src/bin/e_client.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/bin/e_client.c b/src/bin/e_client.c
index 41f20c8b9..f54799eb7 100644
--- a/src/bin/e_client.c
+++ b/src/bin/e_client.c
@@ -319,6 +319,9 @@ _e_client_hook_call(E_Client_Hook_Point hookpoint, E_Client *ec)
319 { 319 {
320 if (ch->delete_me) continue; 320 if (ch->delete_me) continue;
321 ch->func(ch->data, ec); 321 ch->func(ch->data, ec);
322 if ((hookpoint != E_CLIENT_HOOK_DEL) &&
323 e_object_is_del(E_OBJECT(ec)))
324 break;
322 } 325 }
323 _e_client_hooks_walking--; 326 _e_client_hooks_walking--;
324 if ((_e_client_hooks_walking == 0) && (_e_client_hooks_delete > 0)) 327 if ((_e_client_hooks_walking == 0) && (_e_client_hooks_delete > 0))