Open theodis opened 3 years ago
Also, this was working as expected after building off master last week Friday, so I assume this was caused by some change made over the last few days.
I was not able to reproduce this on my Linux box (PopOS/Ubuntu) with the same experimental version, but it appears my pulseaudio
daemon automatically restarts whenever it is killed, so I can't seem to get in a situation where the daemon is shut down to test it.
Well another use case of mine where this is affected is that I have two accounts on my system a work account and a personal account. When I'm working and have a break I'll occasionally su into my personal account and run cataclysm, this'll run cataclysm with my personal configurations and saves but won't have access to the sound system, similar to if pulseaudio is killed.
So another way to test if you have multiple accounts on a linux system is to log into one, in a terminal use the su command to switch to the other account, and then launch cataclysm from the terminal.
I could not reproduce this issue. The game launched fine.
$ pgrep pulse
798
$ pulseaudio -k
$ pgrep pulse
Quitting the game did result in a hang though:
#0 0x00007ffff7de4a8a in __futex_abstimed_wait_common64 ()
from /lib64/libpthread.so.0
#1 0x00007ffff7dd9793 in __pthread_clockjoin_ex () from /lib64/libpthread.so.0
#2 0x00007ffff7e161d6 in close_audio_device () from /lib64/libSDL2-2.0.so.0
#3 0x00007ffff7fa6c1f in Mix_CloseAudio () from /lib64/libSDL2_mixer-2.0.so.0
#4 0x00000000036c7934 in shutdown_sound () at src/sdlsound.cpp:146
#5 0x00000000036d6886 in WinDestroy () at src/sdltiles.cpp:450
#6 0x00000000036d6872 in catacurses::endwin () at src/sdltiles.cpp:3765
#7 0x0000000002f3e861 in (anonymous namespace)::exit_handler (s=s@entry=-999)
at src/main.cpp:126
#8 0x0000000002f3dc50 in main (argc=<optimized out>, argv=<optimized out>)
at src/main.cpp:714
Describe the bug
The game immediately segfaults on launch if sound is unavailable even if sound is turned off in the game options.
Steps To Reproduce
For a Linux system using PulseAudio just run
pulseaudio -k
to kill the sound subsystem and try to launch the gameExpected behavior
If sound isn't available, then the game should play without sound.
Screenshots
No response
Versions and configuration
OS: Gentoo Game Version: 0.F-3781-g3df2f1de5e-dirty Graphics Version: Tiles
Additional context
ALSA lib /var/tmp/portage/media-plugins/alsa-plugins-1.2.5/work/alsa-plugins-1.2.5/pulse/pulse.c:242:(pulse_connect) PulseAudio: Unable to connect: Connection refused
The program has crashed. See the log file for a stack trace. CRASH LOG FILE: /home/theodis/.cataclysm-dda/config/crash.log VERSION: 0.F-3781-g3df2f1de5e-dirty TYPE: Signal MESSAGE: SIGSEGV: Segmentation fault STACK TRACE:
Aborted (core dumped)