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.]
This commit is contained in:
@@ -2661,11 +2661,16 @@ static void
|
|||||||
send_configure(struct weston_surface *surface, int32_t width, int32_t height)
|
send_configure(struct weston_surface *surface, int32_t width, int32_t height)
|
||||||
{
|
{
|
||||||
struct weston_wm_window *window = get_wm_window(surface);
|
struct weston_wm_window *window = get_wm_window(surface);
|
||||||
struct weston_wm *wm = window->wm;
|
struct weston_wm *wm;
|
||||||
struct theme *t = window->wm->theme;
|
struct theme *t;
|
||||||
int new_width, new_height;
|
int new_width, new_height;
|
||||||
int vborder, hborder;
|
int vborder, hborder;
|
||||||
|
|
||||||
|
if (!window || !window->wm)
|
||||||
|
return;
|
||||||
|
wm = window->wm;
|
||||||
|
t = wm->theme;
|
||||||
|
|
||||||
if (window->decorate && !window->fullscreen) {
|
if (window->decorate && !window->fullscreen) {
|
||||||
hborder = 2 * t->width;
|
hborder = 2 * t->width;
|
||||||
vborder = t->titlebar_height + t->width;
|
vborder = t->titlebar_height + t->width;
|
||||||
|
|||||||
Reference in New Issue
Block a user