You are not logged in.
Hello,
I installed dwm via git and want to apply both the alpha patch and the systray patch.
I can apply both onto my clean branch and they work as intended. But once I try to merge them together (and resolve all conflicts as far as I can tell, it does compile without any errors) dwm completely freezes and I can't do anything. (I don't know if it actually freezes or just doesn't start in the first place.)
If I disable the systray in my config.h
static const int showsystray = 0; /* 0 means no systray */everything works fine. So the error is probably in one of the systray functions.
Any pointers would be appreciated!
I will include the patched dwm.c files as well as their ancestor and the merged file:
alpha applied
systray applied
alpha and systray merged together
common ancestor
Edit: Didn't do the gdb thing yet, but I managed to catch dwms stderr:
dwm: fatal error: request code=70, error code=8
X Error of failed request: BadMatch (invalid parameter attributes)
Major opcode of failed request: 70 (X_PolyFillRectangle)
Serial number of failed request: 89
Current serial number in output stream: 90Edit #2: I found the function that was causing the breakage and commented it out (see line 2343). Now the systray seems to work, although it's not transparent yet.
I don't know what the function did and how it worked without the alpha patch tho...
with dirty fix
Last edited by azagthoth (2019-03-13 14:17:15)
Offline
Are there any errors recorded in the journal or the Xorg log?
The suckless site advises this in case of freezes:
gdb -q $(which dwm) --attach $(pgrep -o dwm)
gdb> bt fullThen send the output to the mailing list along with `dwm -v`, more here (in the "Debugging" section):
I'm no programmer so I can't really comment more, sorry.
Jin, Jîyan, Azadî
Offline