summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Hill <dhill@mindcry.org>2013-12-11 04:05:19 +0000
committerAlan Coopersmith <alan.coopersmith@oracle.com>2018-06-17 13:19:02 -0700
commitf8c9f340421883f659b820214ddf8a21d5022a3a (patch)
tree2435dd595e81a5787fbd94d5f40ea65119c58d66
parent919665db8ceb8e2c38a1a4ce4686eb224ddf5234 (diff)
In Find_Client, if (win == XCB_WINDOW_NONE), roots should be freed.
https://bugs.freedesktop.org/show_bug.cgi?id=72583 Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
-rw-r--r--clientwin.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/clientwin.c b/clientwin.c
index 2b1de04..be38a0d 100644
--- a/clientwin.c
+++ b/clientwin.c
@@ -219,8 +219,10 @@ Find_Client(xcb_connection_t * dpy, xcb_window_t root, xcb_window_t subwin)
if (subwin != roots[i])
continue;
win = Find_Child_At_Pointer(dpy, subwin);
- if (win == XCB_WINDOW_NONE)
+ if (win == XCB_WINDOW_NONE) {
+ free (roots);
return subwin; /* No child - Return virtual root. */
+ }
subwin = win;
break;
}