commit bece862a0fc4fc18ef9065b18cd28e2032d0d975
Author: Miles Alan <[email protected]>
AuthorDate: Mon Feb 21 01:10:56 2022 -0500
Commit: Hiltjo Posthuma <[email protected]>
CommitDate: Sun Mar 13 17:32:56 2022 +0100
manage: For isfloating/oldstate check/set, ensure trans client actually
exists
In certain instances trans may be set to a window that doesn't actually
map to a client via wintoclient; in this case it doesn't make sense
to set isfloating/oldstate since trans is essentially invalid in that
case / correlates to the above condition check where trans is set /
XGetTransientForHint is called.
diff --git a/dwm.c b/dwm.c
index 1ee4ea2..5f16260 100644
--- a/dwm.c
+++ b/dwm.c
@@ -1064,7 +1064,7 @@ manage(Window w, XWindowAttributes *wa)
XSelectInput(dpy, w,
EnterWindowMask|FocusChangeMask|PropertyChangeMask|StructureNotifyMask);
grabbuttons(c, 0);
if (!c->isfloating)
- c->isfloating = c->oldstate = trans != None || c->isfixed;
+ c->isfloating = c->oldstate = t || c->isfixed;
if (c->isfloating)
XRaiseWindow(dpy, c->win);
attach(c);