SDL2: Crash after upgrading SDL to version 2.0.6-1x

Bug #1720819 reported by MartinHoetger
42
This bug affects 5 people
Affects Status Importance Assigned to Milestone
widelands
Invalid
Undecided
Unassigned

Bug Description

I am running the Antergos Linux Distibution based on Arch Linux. The system is up to date (2017, October 2nd).

I installed Widelands 19-8 from the 'Software center'.

The game always crashes immediately after the 'loading world' phase started. The screen freezes for a few seconds and then the window is closed without any further notice.

This happens in single and multiplayer mode and even in the tutorial.

Tags: sdl
Revision history for this message
kaputtnik (franku) wrote :

Hi Marty, thanks for your bugreport.

Can you try starting widelands from console/terminal and provide the output here?

Revision history for this message
MartinHoetger (macmartyho) wrote :

Of cause:

[martin@Lifebook ~]$ widelands
This is Widelands Version build-19 (Release)
Set home directory: /home/martin/.widelands
Adding directory: /usr/share/widelands
selected language: en
No corresponding locale found - trying to set it via LANGUAGE=en, LANG=en
Graphics: Try to set Videomode 800x600
Graphics: OpenGL: Version "2.1 Mesa 17.2.1"
Graphics: SDL_GL_RED_SIZE is 8
Graphics: SDL_GL_GREEN_SIZE is 8
Graphics: SDL_GL_BLUE_SIZE is 8
Graphics: SDL_GL_ALPHA_SIZE is 0
Graphics: SDL_GL_BUFFER_SIZE is 24
Graphics: SDL_GL_DOUBLEBUFFER is 1
Graphics: SDL_GL_DEPTH_SIZE is 24
Graphics: SDL_GL_STENCIL_SIZE is 8
Graphics: SDL_GL_ACCUM_RED_SIZE is 0
Graphics: SDL_GL_ACCUM_GREEN_SIZE is 0
Graphics: SDL_GL_ACCUM_BLUE_SIZE is 0
Graphics: SDL_GL_ACCUM_ALPHA_SIZE is 0
Graphics: SDL_GL_STEREO is 0
Graphics: SDL_GL_MULTISAMPLEBUFFERS is 0
Graphics: SDL_GL_MULTISAMPLESAMPLES is 0
Graphics: SDL_GL_ACCELERATED_VISUAL is 1
Graphics: SDL_GL_CONTEXT_MAJOR_VERSION is 2
Graphics: SDL_GL_CONTEXT_MINOR_VERSION is 1
Graphics: SDL_GL_CONTEXT_FLAGS is 0
Graphics: SDL_GL_CONTEXT_PROFILE_MASK is 2
Graphics: SDL_GL_SHARE_WITH_CURRENT_CONTEXT is 0
Graphics: SDL_GL_FRAMEBUFFER_SRGB_CAPABLE is 0
Graphics: OpenGL: Double buffering enabled
Graphics: OpenGL: Max texture size: 8192
Graphics: OpenGL: ShadingLanguage: "1.20"
**** GRAPHICS REPORT ****
 VIDEO DRIVER x11
 pixel fmt 370546692
 size 800 600
**** END GRAPHICS REPORT ****
SoundHandler: loaded song "music/intro_00.ogg"
SoundHandler: loaded song "music/menu_00.ogg"
Speicherzugriffsfehler (Speicherabzug geschrieben)
[martin@Lifebook ~]$

Revision history for this message
MartinHoetger (macmartyho) wrote :

Where do I find the mentioned memory dump?

Revision history for this message
MartinHoetger (macmartyho) wrote :

I also build widelands from source. Same result. See the attached log file.

Additionally (but different issue): The Wiki instructions may be wrong. See line 11 of the log file.

Revision history for this message
TiborB (tiborb95) wrote :

Do you know gdb? You might install it and then run:

gdb ./widelands
run # after some seconds when you get prompt
bt # when the game crashes and you see prompt again

and copy the backtrace you just got

It would be convenient for you if you run windelands in window mode when trying this..

Revision history for this message
MartinHoetger (macmartyho) wrote :
Download full text (9.9 KiB)

[martin@Lifebook widelands]$ gdb ./widelands
GNU gdb (GDB) 8.0.1
Copyright (C) 2017 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-pc-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from ./widelands...done.
(gdb) run
Starting program: /home/martin/widelands/widelands
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".
This is Widelands Version bzr8461[widelands] (Debug)
Set home directory: /home/martin/.widelands
Widelands executable directory: /home/martin/widelands/
Adding directory: /home/martin/widelands/data
selected language: en
No corresponding locale found - trying to set it via LANGUAGE=en, LANG=en
Graphics: Try to set Videomode 800x600
Graphics: OpenGL: Version "2.1 Mesa 17.2.1"
Graphics: SDL_GL_RED_SIZE is 8
Graphics: SDL_GL_GREEN_SIZE is 8
Graphics: SDL_GL_BLUE_SIZE is 8
Graphics: SDL_GL_ALPHA_SIZE is 0
Graphics: SDL_GL_BUFFER_SIZE is 24
Graphics: SDL_GL_DOUBLEBUFFER is 1
Graphics: SDL_GL_DEPTH_SIZE is 24
Graphics: SDL_GL_STENCIL_SIZE is 8
Graphics: SDL_GL_ACCUM_RED_SIZE is 0
Graphics: SDL_GL_ACCUM_GREEN_SIZE is 0
Graphics: SDL_GL_ACCUM_BLUE_SIZE is 0
Graphics: SDL_GL_ACCUM_ALPHA_SIZE is 0
Graphics: SDL_GL_STEREO is 0
Graphics: SDL_GL_MULTISAMPLEBUFFERS is 0
Graphics: SDL_GL_MULTISAMPLESAMPLES is 0
Graphics: SDL_GL_ACCELERATED_VISUAL is 1
Graphics: SDL_GL_CONTEXT_MAJOR_VERSION is 2
Graphics: SDL_GL_CONTEXT_MINOR_VERSION is 1
Graphics: SDL_GL_CONTEXT_FLAGS is 0
Graphics: SDL_GL_CONTEXT_PROFILE_MASK is 2
Graphics: SDL_GL_SHARE_WITH_CURRENT_CONTEXT is 0
Graphics: SDL_GL_FRAMEBUFFER_SRGB_CAPABLE is 0
Graphics: OpenGL: Double buffering enabled
Graphics: OpenGL: Max texture size: 8192
Graphics: OpenGL: ShadingLanguage: "1.20"
**** GRAPHICS REPORT ****
 VIDEO DRIVER x11
 pixel fmt 370546692
 size 800 600
**** END GRAPHICS REPORT ****
[New Thread 0x7fffeac2a700 (LWP 4281)]
[New Thread 0x7fffc3fff700 (LWP 4282)]
[] Section [global], key 'ai_training' not used (did you spell the name correctly?)
[] Section [global], key 'auto_speed' not used (did you spell the name correctly?)
SoundHandler: loaded song "music/intro_00.ogg"
SoundHandler: loaded song "music/menu_00.ogg"
┏━ Running Lua for world:
┃ Resources: 40ms
┃ Terrains: 71ms
┃ Immovables: 932ms

Thread 1 "widelands" received signal SIGSEGV, Segmentation fault.
0x00007ffff7aece28 in ?? () from /usr/lib/libSDL2-2.0.so.0
(gdb) bt
#0 0x00007ffff7aece28 in ?? () from /usr/lib/libSDL2-2.0.so.0
#1 0x00007ffff7aed026 in ?? () from /usr/lib/libSDL2-2.0.so.0
#2 0x00007ffff7aed557 in ?? () from /usr/lib/libSDL2-2.0.so.0
#3 0x00007ffff766c480 in Mix...

Revision history for this message
TiborB (tiborb95) wrote :

Well this points to a sound. I am not expert here, but can you try with --nosound option? (I hope there is such option)

Revision history for this message
MartinHoetger (macmartyho) wrote :

What do you mean? Command line option? Or compile option (for I build it also from source)?

Revision history for this message
MartinHoetger (macmartyho) wrote :

Ah! Command line option works!
widelands --nosound

No it loads the world without crashing!

Revision history for this message
TiborB (tiborb95) wrote :

command line option, should be like this:
./widelands --nosound

or try
./widelands -h
for more info

Revision history for this message
MartinHoetger (macmartyho) wrote :

But this is of cause just a work-around.

How are things going on?

Revision history for this message
TiborB (tiborb95) wrote :

It is still possible that the problem is not on widelands side.

If you are willing to invest your time, you can compile the game by yourselves and see if sounds works there... and as a bonus you will have newest version...

Revision history for this message
kaputtnik (franku) wrote :

I can confirm the crash now. Since i had never had any problems right now, the culprit is the last update of SDL2 which i did yesterday:

From pacman log:
[2017-10-02 19:11] [ALPM] upgraded sdl2 (2.0.5-4 -> 2.0.6-1)

Downgrading to the last version (2.0.5-4) solved the crash (no recompilation needed).

Marty, can you try also downgrading the sdl2 package?

I will try to find related upstream bugs.

kaputtnik (franku)
summary: - Crash during 'loading world' in Antergos Linux
+ SDL2: Crash after upgrading SDL to version 2.0.6-1x
tags: added: sdl
Revision history for this message
MartinHoetger (macmartyho) wrote :

[martin@Lifebook ~]$ sudo pacman -U 'Downloads/sdl2-2.0.5-4-x86_64.pkg.tar.xz'

... worked!

Now it starts without problems! Thank you!

Revision history for this message
Tino (tino79) wrote :

There is a discussion in the SDL forum:
https://discourse.libsdl.org/t/sdl-2-0-6-released/23109

Building SDL2_mixer from source with the latest changeset might fix the issue: https://hg.libsdl.org/SDL_mixer/rev/d3fa63933df2

Revision history for this message
SirVer (sirver) wrote :

Closing as invalid since this is an upstream bug.

Changed in widelands:
status: New → Invalid
Revision history for this message
Hans Joachim Desserud (hjd) wrote :

Thanks for reporting. Now that SDL2 2.0.6 has landed in Ubuntu artful (the current development version due to be released shortly), that is affected by this issue too. I've reported bug 1722060 to follow up this.

Revision history for this message
kaputtnik (franku) wrote :
Revision history for this message
SirVer (sirver) wrote :

I see the crash as well under mac os x using

- sdl2: stable 2.0.6 (bottled) and
- sdl2_mixer HEAD-e6fa426a79dd_1, i.e. build from head. my Revision is after the one mentioned in #16.

Installing sdl2 also from HEAD seems to fixes the issue:

- sdl2: HEAD-db7ee6a1ba6a

Revision history for this message
kaputtnik (franku) wrote :

Don't know what 'head' means on mac, for arch linux the sdl version sdl2-2.0.6-2 does not solve the problem.

Revision history for this message
LAZA (laza74) wrote :

Confirmed on Manjaro Xfce.

downgrading package "sdl2" to 2.0.5-4 solves the issue here.

Revision history for this message
kaputtnik (franku) wrote :

Upgrading archlinux today solves the problem here:

upgraded sdl2_mixer (2.0.1-1 -> 2.0.2-1)
upgraded sdl2 (2.0.5-4 -> 2.0.7-1)

Revision history for this message
GunChleoc (gunchleoc) wrote :

Workaround added in r8662 that will switch off the sound backend for SDL 2.0.6.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.