The version v0.31.1 of Xcpc has been released !
What’s new ?
This release is a bugfix version …
This new version includes a quick fix on my original Xdnd implementation.
A nice user of xcpc on a netbsd distro on a Sun Sparc has reported a fairly old bug that has been present since 2007. After analysis, I found a misuse of XChangeProperty which produces a SIGBUS error on 64-bits big-endian systems. This Xlib function requires 32-bits properties to be encoded with long integers, even on 64-bits platforms …
Damn it ! It’s just one line of code … Thanks to Connor McLaughlan for the bug report.
(gdb) run Starting program: /usr/pkg/bin/xcpc Program received signal SIGBUS, Bus error. 0x0000000041d63808 in _XData32 () from /usr/X11R7/lib/libX11.so.7 (gdb) bt #0 0x0000000041d63808 in _XData32 () from /usr/X11R7/lib/libX11.so.7 #1 0x0000000041d873fc in XChangeProperty () from /usr/X11R7/lib/libX11.so.7 #2 0x000000000016d458 in ?? () Backtrace stopped: previous frame identical to this frame (corrupt stack?) (gdb)
You can download this new version by clicking on the following links:
You can also find all previous versions on the download page.
You can browse the online repository by clicking on the following links:
You can also clone the git repository:
git clone -b xcpc-0.31.1 email@example.com:ponceto/xcpc.git git clone -b xcpc-0.31.1 firstname.lastname@example.org:ponceto/xcpc-emulator.git git clone -b xcpc-0.31.1 email@example.com:ponceto/xcpc-emulator.git
2021-03-29 Olivier Poncet <firstname.lastname@example.org> * SIGBUS error fix on big-endian systems (Sparc, ...)