On Sat, Oct 31, 2015 at 07:34:13PM +0000, Stuart Henderson wrote:
> On 2015/10/31 14:38, Al Poole wrote:
> > Hello,
> > 
> > There seems to be an issue with dlopen() in SDL2 on OpenBSD.
> > I found libXcursor.so was loading successfully via the same call multiple
> > times, then failing and producing SIGBUS error.
> > 
> > The quick solution which allowed my own program to compile with sdl2 is
> > here: http://haxlab.org/patches/sdl2-2.0.2p4.tar.gz.
> > 
> > I disabled the use of libXcursor...
> > 
> > It contains the port files for sdl2. libXcursor.so seems to cause problems.
> > Maybe this is useful. I hope so!
> > 
> > Thanks for such a great OS!
> > 
> > Alastair
> > 
> 
> There's a fix (rather than a workaround) for this issue on tech@, but it
> needs careful review.
> 
> https://marc.info/?l=openbsd-tech&m=144576799413459&w=2

Hello again,

The previous (workaround), disables using libXcursor. Tonight I had some time
to have a look at SDL2-2.0.4 (upstream), on an old machine running OpenBSD 5.8.

It seems there is an issue with ld.so. It's triggered by loading/unloading 
symbols. SDL2 does this twice, firstly to test for the video device, then 
it unloads, and it will load the symbols again for the X11 video for use.
The following patch will only load and unload once. 

This is another simple temporary workaround for some (using SDL2), while
the ld.so change is being reviewed/tested etc. 

As I prefer this solution, I'm sharing. 

Here is the URL: 

http://haxlab.org/patches/SDL-2.0.4-upstream-OpenBSD.5.8.patch


Bonne chance!

Alastair

Reply via email to