From: Michael Stapelberg Date: Wed, 9 Apr 2014 20:14:50 +0000 (+0200) Subject: Bugfix: clear wm_size_hints if they are not set X-Git-Tag: 4.8~85 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=77abb2ef19f6a42ba50a82a41754fcf43d34867b;p=i3%2Fi3 Bugfix: clear wm_size_hints if they are not set Otherwise, we read random garbage. Found by the testsuite due to t/185-scratchpad.t failing because a window was incorrectly recognized as a floating window. --- diff --git a/src/manage.c b/src/manage.c index 25d38797..773c3dfc 100644 --- a/src/manage.c +++ b/src/manage.c @@ -198,7 +198,8 @@ void manage_window(xcb_window_t window, xcb_get_window_attributes_cookie_t cooki border_style_t motif_border_style = BS_NORMAL; window_update_motif_hints(cwindow, xcb_get_property_reply(conn, motif_wm_hints_cookie, NULL), &motif_border_style); xcb_size_hints_t wm_size_hints; - xcb_icccm_get_wm_size_hints_reply(conn, wm_normal_hints_cookie, &wm_size_hints, NULL); + if (!xcb_icccm_get_wm_size_hints_reply(conn, wm_normal_hints_cookie, &wm_size_hints, NULL)) + memset(&wm_size_hints, '\0', sizeof(xcb_size_hints_t)); xcb_get_property_reply_t *type_reply = xcb_get_property_reply(conn, wm_type_cookie, NULL); xcb_get_property_reply_t *state_reply = xcb_get_property_reply(conn, state_cookie, NULL);