Closed Ampnbsp closed 4 months ago
Thanks for the replication steps, I am able to reproduce this issue.
Quite obscure issue.
The underlying issue was the seamless restart functionality, but triggered by:
tagmon
which
killclient
callWhen the application was started again:
c->mon
was NULLc->mon
being NULL ultimately led to a crash when trying to refer to itIn this specific scenario the issue was more apparent because the alwayscenter patch had also been enabled, which sets the save floats coordinates when the window is first mapped (again leading to the coordinates to be persisted when the window is moved to another monitor). This would have been reproducible without it, but then it would require the window to be made floating and moved or resized before it is sent to the other monitor.
Yes, the issue seems to be gone, thank you.
When I tested it with SWITCHTAG_PATCH
I found a kind of offtopic bug.
E.g. dwm has this rule RULE(.class = "ArmCord", .monitor = 1, .switchtag = 3, .tags = 1 << 7)
.
When I launch this from the other monitor, the focus duplicates on the client where I was focused and the launched program.
I put to unfocus(selmon->sel, 1, NULL);
before the selmon = c->mon; and it seems work fine, but I don't know is this the right solution.
I don't see anything immediately wrong with that solution.
Could you raise this as a new issue just so that I have another reference for it?
How to reproduce:
1) Launch program whose windows can be hidden by
killclient
(discord, telegram etc.); 2) Move window in the other monitor; 3)killclient
on that window; 4) Go to the previous monitor; 5) Open that window.After these steps dwm crashes.
https://github.com/bakkeby/dwm-flexipatch/assets/41110719/bc7983da-4ab3-49da-a329-7ee4f17d7440
The patches: