derekf pushed a commit to branch master. http://git.enlightenment.org/core/enlightenment.git/commit/?id=8245c1eb7a38a177ba2ff536949b34c00288e18c
commit 8245c1eb7a38a177ba2ff536949b34c00288e18c Author: Derek Foreman <[email protected]> Date: Wed Nov 30 14:40:11 2016 -0600 Fix keyboard tracking when leaving an xdg shell window _parent_client_contains_pointer() shouldn't return true if there is no parent client. This could result in leaving stale resources in the keyboard focus list and crash the compositor. --- src/bin/e_comp_wl.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/bin/e_comp_wl.c b/src/bin/e_comp_wl.c index 4fc66f6..e1691ce 100644 --- a/src/bin/e_comp_wl.c +++ b/src/bin/e_comp_wl.c @@ -55,6 +55,8 @@ _parent_client_contains_pointer(E_Client *ec) while (top->parent) top = top->parent; + if (top == ec) return EINA_FALSE; + if (top->mouse.in) return EINA_TRUE; EINA_LIST_FOREACH(top->comp_data->sub.list, l, c) --
