mirror of
https://codeberg.org/dwl/dwl.git
synced 2024-12-25 10:46:30 +00:00
fix potential crash in configurex11()
We can't call resize() on unmanaged clients because they don't have borders and
resize() requires them.
Fixes: 94f4ead7da
This commit is contained in:
parent
1b805ddd38
commit
334bbe6f0f
1 changed files with 7 additions and 2 deletions
9
dwl.c
9
dwl.c
|
@ -3089,8 +3089,13 @@ configurex11(struct wl_listener *listener, void *data)
|
|||
event->x, event->y, event->width, event->height);
|
||||
return;
|
||||
}
|
||||
if ((c->isfloating && c != grabc)
|
||||
|| client_is_unmanaged(c) || !c->mon->lt[c->mon->sellt]->arrange)
|
||||
if (client_is_unmanaged(c)) {
|
||||
wlr_scene_node_set_position(&c->scene->node, event->x, event->y);
|
||||
wlr_xwayland_surface_configure(c->surface.xwayland,
|
||||
event->x, event->y, event->width, event->height);
|
||||
return;
|
||||
}
|
||||
if ((c->isfloating && c != grabc) || !c->mon->lt[c->mon->sellt]->arrange)
|
||||
resize(c, (struct wlr_box){.x = event->x - c->bw, .y = event->y - c->bw,
|
||||
.width = event->width + c->bw * 2, .height = event->height + c->bw * 2}, 0);
|
||||
else
|
||||
|
|
Loading…
Reference in a new issue