From dce10bd1416adecca8cca8bab1d1b8e5fc09f791 Mon Sep 17 00:00:00 2001 From: Greg V Date: Thu, 8 Nov 2018 00:27:04 +0300 Subject: [PATCH] xwm: fix resize grab related crash This crash was happening *during resizing* of an xwayland window that was destroyed. Discovered by: John Good @archiesix [@daniels: Moved tests below declarations.] --- xwayland/window-manager.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/xwayland/window-manager.c b/xwayland/window-manager.c index ccdae57f..77260b0f 100644 --- a/xwayland/window-manager.c +++ b/xwayland/window-manager.c @@ -2661,11 +2661,16 @@ static void send_configure(struct weston_surface *surface, int32_t width, int32_t height) { struct weston_wm_window *window = get_wm_window(surface); - struct weston_wm *wm = window->wm; - struct theme *t = window->wm->theme; + struct weston_wm *wm; + struct theme *t; int new_width, new_height; int vborder, hborder; + if (!window || !window->wm) + return; + wm = window->wm; + t = wm->theme; + if (window->decorate && !window->fullscreen) { hborder = 2 * t->width; vborder = t->titlebar_height + t->width;