If I compile windowmaker 0.9x with hardened gcc the "icons" will stick to the
pointer and won't release, however if I turn off stack protector it works fine.
I run windowmaker with tightvnc, don't know if the problem occurs with normal usage.
Steps to Reproduce:
Can anybody else can confirm this problem?
I can confirm this bug.
I worked with a hardened stack as well and got this problem.
I had the same problem.
My system is based on a hardened stage 1 and most of the software is ~x86.
After turning off the stack protector the icon problem was gone.
this is a stack protector bug, it seems to currupt stacks when a file is too big. There was a similar issue with wesnoth awhile back, they decided to just force disable stack protector. I wish maintainers won't disable stack protector without even letting the user know about it though.
(In reply to comment #4)
> this is a stack protector bug, it seems to currupt stacks when a file is too
> big. There was a similar issue with wesnoth awhile back, they decided to just
> force disable stack protector. I wish maintainers won't disable stack protector
> without even letting the user know about it though.
forgot to mention how I come to know this. I manage to track the problem down to the return (by pointer) value of WMMaskEvent calls from functions in dock.c getting weird numbers for button ids, but when I dump the values in WMMaskEvent it works. So it would seem something was currupting the return value when WMMaskEvent returns, which should not be possible as it is passed by pointer (reference).
The dock.c file (the file that manages all things docking in windowmaker) is 4479 line long, the longest of the windowmaker source files. If I compile that file alone without -fstack-protector (by adding a rule to Makefile.in for dock.o: dock.c, with -fno-stack-protector), it works.
Is this still an issue with x11-wm/windowmaker-0.92.0-r3 and an up-to-date toolchain ?