New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Runtime crash: When 'MUSIC TYPE' is set to 'JUKEBOX' a 'Segmentation fault' will occur when starting new levels. #672
Comments
When reporting a crash with segmentation fault, please collect a backtrace. I cannot reproduce this crash here. As a guess, are you using Fluidsynth? There is a known issue with certain versions of Fluidsynth and SDL: issue #614. |
I tried
Looks like Fluidsynth version 2.1.7-1.1 is installed. Should I uninstall it and/or install something else? see issue #614
If this is true and related as the same bug, I guess this is going to closed too. |
Might be a different bug, but here's what I got from one of the random times dxx-rebirth crashes when 'JUKEBOX' option is set. [xcb] Unknown sequence number while processing reply |
As I understand the Fluidsynth issue, SDL was misusing Fluidsynth, so you should either not use Fluidsynth at all, or use a version of SDL which does not misuse it. Are you using SDL1 or SDL2 with Rebirth? Last I heard, only SDL2 had received the fix.
If it is the same bug, then there is nothing I can do about it, because it is a problem in SDL. We do not know yet if it is the same bug.
That might be a consequence of memory corruption. As I understand issue #614, memory corruption is one possible outcome of that bug. |
played the game finishing level 1 in windowed mode with 'JUKEBOX' selected.
Edited to put stuff back in multiline code block. |
Please use a multiline code block for pasting backtraces, to prevent Github becoming confused by the symbols in the backtrace output.
You are using fluidsynth and SDL1-mixer. As I understand issue #614, that is the same combination that caused memory corruption and crashes there. The solutions are the same: use SDL2-mixer, disable fluidsynth, or patch SDL1-mixer not to misuse fluidsynth. The best I could do in Rebirth would be to try to detect use of fluidsynth with SDL1 and disable music entirely. I don't know how viable that is, and it would punish anyone who installs a fixed version of SDL1-mixer. Since SDL2 handles fluidsynth properly, I am not strongly inclined to try to detect and block the bad combination. If you would like to propose a patch to do so, I will review it. |
Tried the |
SDL2 does not define |
Comments from the original poster indicate that this crash is not a problem in SDL2, which is consistent with SDL2 being fixed to work with fluidsynth. There is nothing I can do in Rebirth to make SDL1 use fluidsynth correctly. I suggest contacting the distribution maintainers and asking them to either patch SDL1 to handle this or patch SDL1 not to allow use of fluidsynth. Closing, since there is nothing more to do here. |
Linux, Debian Stable, Debian GNU/Linux 11 (bullseye)
D2X-Rebirth v0.61 0.60.0-beta2-2122-ge3faab0899bc Oct 3 2022 22:23:37
Compiled
Intel CPU, ...
Runtime crash: When 'MUSIC TYPE' is set to 'JUKEBOX' a 'Segmentation fault' will occur when starting new levels.
Note: I'm thinking this 'JUKEBOX' setting may cause some other random 'Segmentation fault's as well, but I'm not sure.
e.g. This 'Segmentation fault' will occur after escaping the first mine, when about to start the next mine, if 'MUSIC TYPE' is set to 'JUKEBOX'.
Set 'MUSIC TYPE' to anything other than 'JUKEBOX' and this 'segmentation fault' won't occur.
Terminal messages:
with -debug -verbose it crashes with this message, on starting level 2 after finishing level 1
The text was updated successfully, but these errors were encountered: