Closed smcv closed 1 year ago
oh wow, this game is written in D, which explains the weird stack trace.
So it's calling SDL_UpperBlit with a destination surface with a NULL pixels
field, which upsets SDL2...but it also has a clip rect of [0,0,0,0], which SDL 1.2 sees as being a no-op and returns without doing any further work, so we'll do that too.
Actually, SDL2 does all that logic too, so we'll just check for the NULL pixels and let the system sort out clipping, etc.
Confirmed fixed with https://github.com/libsdl-org/sdl12-compat/commit/67f8b3a85b782eefb4db90f34d5b0742ef2cb5fc, 1.2.58 + 29 commits
Prerequisites:
pipewire-pulse
emulating PulseAudioapt install tatan
(Debian package version1.0.dfsg2-1
)libsdl1.2-compat
either 1.2.58-1 (packaged in Debian experimental) or commit 63e4393 (locally built)libsdl2-2.0-0
version2.24.1+dfsg-1
libsdl-image1.2
version1.2.12-13+b1
libsdl-mixer1.2
version1.2.12-17+b2
libsdl1.2debian
(real SDL 1.2) version1.2.15+dfsg2-8
To reproduce:
tatan
LD_LIBRARY_PATH=.../sdl12-compat/_build tatan
SDL_VIDEODRIVER=wayland LD_LIBRARY_PATH=.../sdl12-compat/_build tatan
Expected result: it runs
Actual result: Real SDL 1.2 works, sdl12-compat segfaults.