From 7abdf973ea7e98a6d23c8d149b3d7a95409768f1 Mon Sep 17 00:00:00 2001 From: Adam Jackson Date: Tue, 14 Sep 2004 19:01:16 +0000 Subject: [PATCH] Bug #1360: Fix a segfault by checking the return value of XQueryTree. (Johan Kiviniemi) --- ChangeLog | 6 ++++++ xcompmgr.c | 8 +++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index f9abcd0..467e608 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2004-09-14 Adam Jackson + + * xcompmgr.c: + Bug #1360: Fix a segfault by checking the return value of XQueryTree. + (Johan Kiviniemi) + 2004-09-10 Adam Jackson * xcompmgr.c: diff --git a/xcompmgr.c b/xcompmgr.c index 122d8b4..7e542fe 100644 --- a/xcompmgr.c +++ b/xcompmgr.c @@ -1297,7 +1297,13 @@ determine_wintype (Display *dpy, Window w) if (type != winNormalAtom) return type; - XQueryTree (dpy, w, &root_return, &parent_return, &children, &nchildren); + if (!XQueryTree (dpy, w, &root_return, &parent_return, &children, + &nchildren)) + { + /* XQueryTree failed. */ + return winNormalAtom; + } + for (i = 0;i < nchildren;i++) { type = determine_wintype (dpy, children[i]);