flathub / org.godotengine.Godot

Godot engine
https://flathub.org/apps/details/org.godotengine.Godot
39 stars 25 forks source link

OGG files cause the engine to crash. #60

Closed Lefl1 closed 4 years ago

Lefl1 commented 4 years ago

When importing a .ogg vorbis file with the flatpak version of godot. Godot crashes with the following error messages:

Editing project: /home/lennard/Neues Spiel (::home::lennard::Neues Spiel)
Godot Engine v3.2.2.stable.flathub - https://godotengine.org
OpenGL ES 3.0 Renderer: AMD Radeon R7 200 Series (BONAIRE, DRM 3.37.0, 5.7.10-201.fc32.x86_64, LLVM 9.0.1)

handle_crash: Program crashed with signal 11
Dumping the backtrace. Please include this when reporting the bug on https://github.com/godotengine/godot/issues
[1] /usr/lib/x86_64-linux-gnu/libc.so.6(+0x396a0) [0x7fb9bb1996a0] ()
[2] /app/bin/godot-bin() [0x26f3ce7] ()
[3] /app/bin/godot-bin() [0x2897dc7] ()
[4] /app/bin/godot-bin() [0x2bfd990] ()
[5] /app/bin/godot-bin() [0x251f32e] ()
[6] /app/bin/godot-bin() [0x2522473] ()
[7] /app/bin/godot-bin() [0x2526d7b] ()
[8] /app/bin/godot-bin() [0x2527fe4] ()
[9] /app/bin/godot-bin() [0xd10364] ()
[10] /app/bin/godot-bin() [0x1bb1d8e] ()
[11] /app/bin/godot-bin() [0x1bcd37f] ()
[12] /app/bin/godot-bin() [0x2dbfde0] ()
[13] /app/bin/godot-bin(main+0x173d) [0x98935d] ()
[14] /usr/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf3) [0x7fb9bb184183] ()
[15] /app/bin/godot-bin() [0x996f7e] ()
-- END OF BACKTRACE --

This only happens on some ogg files though. I have found that most ogg files converted from some other format with ffmpeg seem to not crash the engine, but cause errors like this in the editor:

 modules/stb_vorbis/audio_stream_ogg_vorbis.cpp:197 - Condition "ogg_stream == __null" is true.
 modules/stb_vorbis/resource_importer_ogg_vorbis.cpp:102 - Condition "!ogg_stream->get_data().size()" is true. Returned: ERR_FILE_CORRUPT
 editor/editor_file_system.cpp:1800 - Error importing 'res://test.ogg'.
 Failed loading resource: res://test.ogg.
 editor/editor_node.cpp:739 - Condition "!res.is_valid()" is true. Returned: ERR_CANT_OPEN

The affected files play just fine in any music player

Calinou commented 4 years ago

Does this occur when importing the same OGG files in a non-Flatpak version? (Make sure to remove .import/ before trying in a non-Flatpak version.)

Crashes when importing specific OGG files are a known issue: https://github.com/godotengine/godot/issues/40307, https://github.com/godotengine/godot/issues/40460

Lefl1 commented 4 years ago

The crash does not occur with the same ogg file that causes the flatpaked engine to crash. I just tested the ffmpeg converted file and it does not seem to work on the native version either.

I forgot to mention that I was using 3.1.2 for the native version as that is the version packaged in the fedora repositories. It appears that the crash also happens on the newest version of godot downloaded from the website, so this is an upstream regression I guess.