godot
godot copied to clipboard
Game crash without debug information
Godot version
4.0.stable
System information
KDE Neon (Linux), OpenGL API 3.3.0 NVIDIA 525.78.01 - Compatibility - Using Device: NVIDIA Corporation - NVIDIA GeForce GTX 1660 Ti
Issue description
Hello, my game crash without debug information.
I suspect it may be a scene I have as autoload, called curtain. In that scene I want to make it so that there is a transition after the player dies (the ship). It's probably wrong what I'm doing, but it's weird that there's no debugging information that I'm doing wrong.
If you can't replicate I make a mini video :)
Steps to reproduce
- Clone: https://github.com/MatiasVME/Spaceship3000 | d09a37b13b34e2decee1d31eb0ae79bf57dbaec8
- Play game
- Dead with the player spaceship (You can move with arrow keys)
- wait, and crash (game without debug information)
Minimal reproduction project
Is not a complex project.
Clone: https://github.com/MatiasVME/Spaceship3000 d09a37b13b34e2decee1d31eb0ae79bf57dbaec8
The crash is in the line:
get_tree().change_scene_to_file(scene)
When I use curtain.tscn like autoload and curtain.gd.
I can confirm this on 4.1.dev 31eccb550. Terminal prints the following line when crashing:
malloc_consolidate(): unaligned fastbin chunk detected
Backtrace from gdb:
(gdb) bt
#0 0x00007ffff70afe5c in __pthread_kill_implementation () from /lib64/libc.so.6
#1 0x00007ffff705fa76 in raise () from /lib64/libc.so.6
#2 0x00007ffff70497fc in abort () from /lib64/libc.so.6
#3 0x00007ffff70a408e in __libc_message () from /lib64/libc.so.6
#4 0x00007ffff70b9b9c in malloc_printerr () from /lib64/libc.so.6
#5 0x00007ffff70ba80c in malloc_consolidate () from /lib64/libc.so.6
#6 0x00007ffff70bbcf0 in _int_free () from /lib64/libc.so.6
#7 0x00007ffff70be363 in free () from /lib64/libc.so.6
#8 0x00000000089cd7cb in Memory::free_static (p_ptr=0xd312fc0, p_pad_align=false) at core/os/memory.cpp:168
#9 0x0000000002ea2afe in memdelete<Node> (p_class=0xd312fc0) at ./core/os/memory.h:112
#10 0x0000000005834aee in Node::_notification (this=0xd16b1f0, p_notification=1) at scene/main/node.cpp:170
#11 0x00000000028739fb in Node::_notificationv (this=0xd16b1f0, p_notification=1, p_reversed=true) at ./scene/main/node.h:46
#12 0x0000000003228280 in CanvasItem::_notificationv (this=0xd16b1f0, p_notification=1, p_reversed=true) at ./scene/main/canvas_item.h:45
#13 0x00000000062bf660 in Node2D::_notificationv (this=0xd16b1f0, p_notification=1, p_reversed=true) at ./scene/2d/node_2d.h:37
#14 0x00000000062d15c2 in CollisionObject2D::_notificationv (this=0xd16b1f0, p_notification=1, p_reversed=true) at ./scene/2d/collision_object_2d.h:40
#15 0x00000000062d2272 in Area2D::_notificationv (this=0xd16b1f0, p_notification=1, p_reversed=true) at scene/2d/area_2d.h:38
#16 0x00000000092d20c5 in Object::notification (this=0xd16b1f0, p_notification=1, p_reversed=true) at core/object/object.cpp:790
#17 0x00000000092cdd2d in Object::_predelete (this=0xd16b1f0) at core/object/object.cpp:196
#18 0x00000000092e04a1 in predelete_handler (p_object=0xd16b1f0) at core/object/object.cpp:1825
#19 0x0000000002ea2acd in memdelete<Node> (p_class=0xd16b1f0) at ./core/os/memory.h:105
#20 0x0000000005834aee in Node::_notification (this=0xd19ad20, p_notification=1) at scene/main/node.cpp:170
#21 0x00000000028739fb in Node::_notificationv (this=0xd19ad20, p_notification=1, p_reversed=true) at ./scene/main/node.h:46
#22 0x00000000092d20c5 in Object::notification (this=0xd19ad20, p_notification=1, p_reversed=true) at core/object/object.cpp:790
#23 0x00000000092cdd2d in Object::_predelete (this=0xd19ad20) at core/object/object.cpp:196
#24 0x00000000092e04a1 in predelete_handler (p_object=0xd19ad20) at core/object/object.cpp:1825
#25 0x0000000002ea2acd in memdelete<Node> (p_class=0xd19ad20) at ./core/os/memory.h:105
#26 0x0000000005834aee in Node::_notification (this=0xd21f650, p_notification=1) at scene/main/node.cpp:170
#27 0x00000000028739fb in Node::_notificationv (this=0xd21f650, p_notification=1, p_reversed=true) at ./scene/main/node.h:46
#28 0x0000000003228280 in CanvasItem::_notificationv (this=0xd21f650, p_notification=1, p_reversed=true) at ./scene/main/canvas_item.h:45
#29 0x00000000062bf660 in Node2D::_notificationv (this=0xd21f650, p_notification=1, p_reversed=true) at ./scene/2d/node_2d.h:37
#30 0x00000000092d20c5 in Object::notification (this=0xd21f650, p_notification=1, p_reversed=true) at core/object/object.cpp:790
#31 0x00000000092cdd2d in Object::_predelete (this=0xd21f650) at core/object/object.cpp:196
#32 0x00000000092e04a1 in predelete_handler (p_object=0xd21f650) at core/object/object.cpp:1825
#33 0x0000000002ea2acd in memdelete<Node> (p_class=0xd21f650) at ./core/os/memory.h:105
#34 0x000000000588e52d in SceneTree::_change_scene (this=0xd0d22d0, p_to=0xd1fb650) at scene/main/scene_tree.cpp:1105
#35 0x00000000042311a4 in call_with_variant_args_helper<__UnexistingClass, Node*, 0ul> (p_instance=0xd0d22d0, p_method=(void (__UnexistingClass::*)(__UnexistingClass * const, Node *)) 0x588e4fa <SceneTree::_change_scene(Node*)>, p_args=0x7fffffffc3b0, r_error=...) at ./core/variant/binder_common.h:293
#36 0x0000000004230d50 in call_with_variant_args_dv<__UnexistingClass, Node*> (p_instance=0xd0d22d0, p_method=(void (__UnexistingClass::*)(__UnexistingClass * const, Node *)) 0x588e4fa <SceneTree::_change_scene(Node*)>, p_args=0x7fffffffc780, p_argcount=1, r_error=..., default_values=...) at ./core/variant/binder_common.h:440
#37 0x000000000422feef in MethodBindT<Node*>::call (this=0xcd9a610, p_object=0xd0d22d0, p_args=0x7fffffffc780, p_arg_count=1, r_error=...) at ./core/object/method_bind.h:324
#38 0x00000000092d1a0c in Object::callp (this=0xd0d22d0, p_method=..., p_args=0x7fffffffc780, p_argcount=1, r_error=...) at core/object/object.cpp:733
#39 0x0000000008d641be in Callable::callp (this=0x7fffd57de020, p_arguments=0x7fffffffc780, p_argcount=1, r_return_value=..., r_call_error=...) at core/variant/callable.cpp:62
#40 0x00000000092c741c in MessageQueue::_call_function (this=0xabb58d0, p_callable=..., p_args=0x7fffd57de038, p_argcount=1, p_show_error=false) at core/object/message_queue.cpp:229
#41 0x00000000092c7781 in MessageQueue::flush (this=0xabb58d0) at core/object/message_queue.cpp:275
#42 0x0000000002685bd9 in Main::iteration () at main/main.cpp:3164
#43 0x00000000025efc24 in OS_LinuxBSD::run (this=0x7fffffffcb00) at platform/linuxbsd/os_linuxbsd.cpp:880
#44 0x00000000025e2a50 in main (argc=1, argv=0x7fffffffd068) at platform/linuxbsd/godot_linuxbsd.cpp:73
Full backtrace from gdb:
(gdb) bt full
#0 0x00007ffff70afe5c in __pthread_kill_implementation () from /lib64/libc.so.6
No symbol table info available.
#1 0x00007ffff705fa76 in raise () from /lib64/libc.so.6
No symbol table info available.
#2 0x00007ffff70497fc in abort () from /lib64/libc.so.6
No symbol table info available.
#3 0x00007ffff70a408e in __libc_message () from /lib64/libc.so.6
No symbol table info available.
#4 0x00007ffff70b9b9c in malloc_printerr () from /lib64/libc.so.6
No symbol table info available.
#5 0x00007ffff70ba80c in malloc_consolidate () from /lib64/libc.so.6
No symbol table info available.
#6 0x00007ffff70bbcf0 in _int_free () from /lib64/libc.so.6
No symbol table info available.
#7 0x00007ffff70be363 in free () from /lib64/libc.so.6
No symbol table info available.
#8 0x00000000089cd7cb in Memory::free_static (p_ptr=0xd312fc0, p_pad_align=false) at core/os/memory.cpp:168
s = 0xd312fb0
__FUNCTION__ = "free_static"
mem = 0xd312fb0 "0J&\r"
prepad = true
#9 0x0000000002ea2afe in memdelete<Node> (p_class=0xd312fc0) at ./core/os/memory.h:112
No locals.
#10 0x0000000005834aee in Node::_notification (this=0xd16b1f0, p_notification=1) at scene/main/node.cpp:170
child = 0xd312fc0
__FUNCTION__ = "_notification"
#11 0x00000000028739fb in Node::_notificationv (this=0xd16b1f0, p_notification=1, p_reversed=true) at ./scene/main/node.h:46
No locals.
#12 0x0000000003228280 in CanvasItem::_notificationv (this=0xd16b1f0, p_notification=1, p_reversed=true) at ./scene/main/canvas_item.h:45
No locals.
#13 0x00000000062bf660 in Node2D::_notificationv (this=0xd16b1f0, p_notification=1, p_reversed=true) at ./scene/2d/node_2d.h:37
No locals.
#14 0x00000000062d15c2 in CollisionObject2D::_notificationv (this=0xd16b1f0, p_notification=1, p_reversed=true) at ./scene/2d/collision_object_2d.h:40
No locals.
#15 0x00000000062d2272 in Area2D::_notificationv (this=0xd16b1f0, p_notification=1, p_reversed=true) at scene/2d/area_2d.h:38
No locals.
#16 0x00000000092d20c5 in Object::notification (this=0xd16b1f0, p_notification=1, p_reversed=true) at core/object/object.cpp:790
No locals.
#17 0x00000000092cdd2d in Object::_predelete (this=0xd16b1f0) at core/object/object.cpp:196
No locals.
#18 0x00000000092e04a1 in predelete_handler (p_object=0xd16b1f0) at core/object/object.cpp:1825
No locals.
#19 0x0000000002ea2acd in memdelete<Node> (p_class=0xd16b1f0) at ./core/os/memory.h:105
No locals.
#20 0x0000000005834aee in Node::_notification (this=0xd19ad20, p_notification=1) at scene/main/node.cpp:170
child = 0xd16b1f0
__FUNCTION__ = "_notification"
#21 0x00000000028739fb in Node::_notificationv (this=0xd19ad20, p_notification=1, p_reversed=true) at ./scene/main/node.h:46
No locals.
#22 0x00000000092d20c5 in Object::notification (this=0xd19ad20, p_notification=1, p_reversed=true) at core/object/object.cpp:790
No locals.
#23 0x00000000092cdd2d in Object::_predelete (this=0xd19ad20) at core/object/object.cpp:196
No locals.
#24 0x00000000092e04a1 in predelete_handler (p_object=0xd19ad20) at core/object/object.cpp:1825
No locals.
#25 0x0000000002ea2acd in memdelete<Node> (p_class=0xd19ad20) at ./core/os/memory.h:105
No locals.
#26 0x0000000005834aee in Node::_notification (this=0xd21f650, p_notification=1) at scene/main/node.cpp:170
child = 0xd19ad20
__FUNCTION__ = "_notification"
#27 0x00000000028739fb in Node::_notificationv (this=0xd21f650, p_notification=1, p_reversed=true) at ./scene/main/node.h:46
No locals.
#28 0x0000000003228280 in CanvasItem::_notificationv (this=0xd21f650, p_notification=1, p_reversed=true) at ./scene/main/canvas_item.h:45
No locals.
#29 0x00000000062bf660 in Node2D::_notificationv (this=0xd21f650, p_notification=1, p_reversed=true) at ./scene/2d/node_2d.h:37
No locals.
#30 0x00000000092d20c5 in Object::notification (this=0xd21f650, p_notification=1, p_reversed=true) at core/object/object.cpp:790
No locals.
#31 0x00000000092cdd2d in Object::_predelete (this=0xd21f650) at core/object/object.cpp:196
No locals.
#32 0x00000000092e04a1 in predelete_handler (p_object=0xd21f650) at core/object/object.cpp:1825
No locals.
#33 0x0000000002ea2acd in memdelete<Node> (p_class=0xd21f650) at ./core/os/memory.h:105
No locals.
#34 0x000000000588e52d in SceneTree::_change_scene (this=0xd0d22d0, p_to=0xd1fb650) at scene/main/scene_tree.cpp:1105
No locals.
#35 0x00000000042311a4 in call_with_variant_args_helper<__UnexistingClass, Node*, 0ul> (p_instance=0xd0d22d0, p_method=(void (__UnexistingClass::*)(__UnexistingClass * const, Node *)) 0x588e4fa <SceneTree::_change_scene(Node*)>, p_args=0x7fffffffc3b0, r_error=...) at ./core/variant/binder_common.h:293
No locals.
#36 0x0000000004230d50 in call_with_variant_args_dv<__UnexistingClass, Node*> (p_instance=0xd0d22d0, p_method=(void (__UnexistingClass::*)(__UnexistingClass * const, Node *)) 0x588e4fa <SceneTree::_change_scene(Node*)>, p_args=0x7fffffffc780, p_argcount=1, r_error=..., default_values=...) at ./core/variant/binder_common.h:440
missing = 0
dvs = 0
args = {0x7fffd57de038}
#37 0x000000000422feef in MethodBindT<Node*>::call (this=0xcd9a610, p_object=0xd0d22d0, p_args=0x7fffffffc780, p_arg_count=1, r_error=...) at ./core/object/method_bind.h:324
--Type <RET> for more, q to quit, c to continue without paging--
No locals.
#38 0x00000000092d1a0c in Object::callp (this=0xd0d22d0, p_method=..., p_args=0x7fffffffc780, p_argcount=1, r_error=...) at core/object/object.cpp:733
__FUNCTION__ = "callp"
ret = {type = Variant::NIL, _data = {_bool = false, _int = 0, _float = 0, _transform2d = 0x0, _aabb = 0x0, _basis = 0x0, _transform3d = 0x0, _projection = 0x0, packed_array = 0x0, _ptr = 0x0, _mem = '\000' <repeats 15 times>}}
_debug_lock = {obj = 0xd0d22d0}
method = 0xcd9a610
#39 0x0000000008d641be in Callable::callp (this=0x7fffd57de020, p_arguments=0x7fffffffc780, p_argcount=1, r_return_value=..., r_call_error=...) at core/variant/callable.cpp:62
obj = 0xd0d22d0
#40 0x00000000092c741c in MessageQueue::_call_function (this=0xabb58d0, p_callable=..., p_args=0x7fffd57de038, p_argcount=1, p_show_error=false) at core/object/message_queue.cpp:229
argptrs = 0x7fffffffc780
ce = {error = Callable::CallError::CALL_OK, argument = 0, expected = 0}
ret = {type = Variant::NIL, _data = {_bool = false, _int = 0, _float = 0, _transform2d = 0x0, _aabb = 0x0, _basis = 0x0, _transform3d = 0x0, _projection = 0x0, packed_array = 0x0, _ptr = 0x0, _mem = '\000' <repeats 15 times>}}
__FUNCTION__ = "_call_function"
#41 0x00000000092c7781 in MessageQueue::flush (this=0xabb58d0) at core/object/message_queue.cpp:275
args = 0x7fffd57de038
message = 0x7fffd57de020
advance = 48
target = 0xd0d22d0
read_pos = 48
__FUNCTION__ = "flush"
#42 0x0000000002685bd9 in Main::iteration () at main/main.cpp:3164
ticks = 7273461
ticks_elapsed = 8507
physics_ticks_per_second = 60
physics_step = 0.016666666666666666
time_scale = 1
advance = {process_step = 0.0083333333333333332, physics_steps = 0, interpolation_fraction = 0.96878000000000697}
process_step = 0.0083333333333333332
scaled_step = 0.0083333333333333332
physics_process_ticks = 0
process_ticks = 0
navigation_process_ticks = 0
max_physics_steps = 8
exit = false
process_begin = 7273462
frame_time = 8422
__FUNCTION__ = "iteration"
#43 0x00000000025efc24 in OS_LinuxBSD::run (this=0x7fffffffcb00) at platform/linuxbsd/os_linuxbsd.cpp:880
No locals.
#44 0x00000000025e2a50 in main (argc=1, argv=0x7fffffffd068) at platform/linuxbsd/godot_linuxbsd.cpp:73
os = {<OS_Unix> = {<OS> = {_vptr.OS = 0x10c3090 <vtable for OS_LinuxBSD+16>, static singleton = 0x7fffffffcb00, static target_ticks = 0, _execpath = {_cowdata = {_ptr = 0xaba7af0 U"/home/hugo/Documents/Git/godotengine/godot/bin/godot.linuxbsd.editor.x86_64"}, static _null = 0 U'\000', static invalid_node_name_characters = {_cowdata = {_ptr = 0xa81fc10 U". : @ / \" %"}, static _null = 0 U'\000',
static invalid_node_name_characters = <same as static member of an already seen type>}}, _cmdline = {_data = 0x0}, _user_args = {_data = 0x0}, _keep_screen_on = true, low_processor_usage_mode = false, low_processor_usage_mode_sleep_usec = 6900, _verbose_stdout = false, _debug_stdout = false, _local_clipboard = {_cowdata = {_ptr = 0x0}, static _null = 0 U'\000', static invalid_node_name_characters = {_cowdata = {_ptr = 0xa81fc10 U". : @ / \" %"},
static _null = 0 U'\000', static invalid_node_name_characters = <same as static member of an already seen type>}}, _exit_code = 0, _allow_hidpi = true, _allow_layered = false, _stdout_enabled = true, _stderr_enabled = true, _writing_movie = false, _logger = 0xa831970, restart_on_exit = false, restart_commandline = {_data = 0x0}, _display_driver_id = 0, _current_rendering_driver_name = {_cowdata = {_ptr = 0xabaaa10 U"opengl3"}, static _null = 0 U'\000',
static invalid_node_name_characters = {_cowdata = {_ptr = 0xa81fc10 U". : @ / \" %"}, static _null = 0 U'\000', static invalid_node_name_characters = <same as static member of an already seen type>}}, _current_rendering_method = {_cowdata = {_ptr = 0xab85f90 U"gl_compatibility"}, static _null = 0 U'\000', static invalid_node_name_characters = {_cowdata = {_ptr = 0xa81fc10 U". : @ / \" %"}, static _null = 0 U'\000',
static invalid_node_name_characters = <same as static member of an already seen type>}}, has_server_feature_callback = 0x7362d79 <has_server_feature_callback(String const&)>, _render_thread_mode = OS::RENDER_THREAD_SAFE}, <No data fields>}, font_config_initialized = true, config = 0xa833cd0, object_set = 0xa8a1a80, joypad = 0xc63d7a0, driver_alsa = {<AudioDriver> = {_vptr.AudioDriver = 0x175fa98 <vtable for AudioDriverALSA+16>,
static singleton = 0x7fffffffccd0, _last_mix_time = 0, _last_mix_frames = 0, prof_ticks = 0, prof_time = 0, input_buffer = {write = {<No data fields>}, _cowdata = {_ptr = 0x0}}, input_position = 0, input_size = 0}, thread = {static main_thread_id = 4679941937572454136, id = 17606749225356372073, static caller_id = 4679941937572454136, thread = {_M_id = {_M_thread = 0}}, static platform_functions = {set_name = 0x3ab4696 <set_name(String const&)>,
set_priority = 0x0, init = 0x0, wrapper = 0x0, term = 0x0}}, mutex = {mutex = {<std::__recursive_mutex_base> = {_M_mutex = {__data = {__lock = 0, __count = 0, __owner = 0, __nusers = 0, __kind = 1, __spins = 0, __elision = 0, __list = {__prev = 0x0, __next = 0x0}}, __size = '\000' <repeats 16 times>, "\001", '\000' <repeats 22 times>, __align = 0}}, <No data fields>}}, pcm_handle = 0x0, output_device_name = {_cowdata = {_ptr = 0xa8319a0 U"Default"},
static _null = 0 U'\000', static invalid_node_name_characters = {_cowdata = {_ptr = 0xa81fc10 U". : @ / \" %"}, static _null = 0 U'\000', static invalid_node_name_characters = <same as static member of an already seen type>}}, new_output_device = {_cowdata = {_ptr = 0xa8319e0 U"Default"}, static _null = 0 U'\000', static invalid_node_name_characters = {_cowdata = {_ptr = 0xa81fc10 U". : @ / \" %"}, static _null = 0 U'\000',
static invalid_node_name_characters = <same as static member of an already seen type>}}, samples_in = {write = {<No data fields>}, _cowdata = {_ptr = 0x0}}, samples_out = {write = {<No data fields>}, _cowdata = {_ptr = 0x0}}, mix_rate = 0, speaker_mode = AudioDriver::SPEAKER_MODE_STEREO, buffer_frames = 18446744073709551368, buffer_size = 140737488343160, period_size = 8589934592, channels = 0, active = {flag = std::atomic<bool> = { false }},
exit_thread = {flag = std::atomic<bool> = { false }}}, driver_alsamidi = {<MIDIDriver> = {_vptr.MIDIDriver = 0x1762ce8 <vtable for MIDIDriverALSAMidi+16>, static singleton = 0x7fffffffcc78, static last_received_message = 0 '\000'}, thread = {static main_thread_id = 4679941937572454136, id = 17606749225356372073, static caller_id = 4679941937572454136, thread = {_M_id = {_M_thread = 0}}, static platform_functions = {
set_name = 0x3ab4696 <set_name(String const&)>, set_priority = 0x0, init = 0x0, wrapper = 0x0, term = 0x0}}, mutex = {mutex = {<std::__recursive_mutex_base> = {_M_mutex = {__data = {__lock = 0, __count = 0, __owner = 0, __nusers = 0, __kind = 1, __spins = 0, __elision = 0, __list = {__prev = 0x0, __next = 0x0}}, __size = '\000' <repeats 16 times>, "\001", '\000' <repeats 22 times>, __align = 0}}, <No data fields>}}, connected_inputs = {
write = {<No data fields>}, _cowdata = {_ptr = 0x0}}, exit_thread = {flag = std::atomic<bool> = { false }}}, driver_pulseaudio = {<AudioDriver> = {_vptr.AudioDriver = 0x1762820 <vtable for AudioDriverPulseAudio+16>, static singleton = 0x7fffffffccd0, _last_mix_time = 7263674, _last_mix_frames = 512, prof_ticks = 7277408, prof_time = 3, input_buffer = {write = {<No data fields>}, _cowdata = {_ptr = 0x0}}, input_position = 0, input_size = 0}, thread = {
static main_thread_id = 4679941937572454136, id = 10558650373985390586, static caller_id = 4679941937572454136, thread = {_M_id = {_M_thread = 140736532043456}}, static platform_functions = {set_name = 0x3ab4696 <set_name(String const&)>, set_priority = 0x0, init = 0x0, wrapper = 0x0, term = 0x0}}, mutex = {mutex = {<std::__recursive_mutex_base> = {_M_mutex = {__data = {__lock = 0, __count = 0, __owner = 0, __nusers = 0, __kind = 1, __spins = 0,
__elision = 0, __list = {__prev = 0x0, __next = 0x0}}, __size = '\000' <repeats 16 times>, "\001", '\000' <repeats 22 times>, __align = 0}}, <No data fields>}}, pa_ml = 0xc6005a0, pa_ctx = 0xc6006a0, pa_str = 0xc53e870, pa_rec_str = 0x0, pa_map = {channels = 2 '\002', map = {PA_CHANNEL_POSITION_FRONT_LEFT, PA_CHANNEL_POSITION_FRONT_RIGHT, PA_CHANNEL_POSITION_FRONT_CENTER, PA_CHANNEL_POSITION_LFE, PA_CHANNEL_POSITION_REAR_LEFT,
PA_CHANNEL_POSITION_REAR_RIGHT, PA_CHANNEL_POSITION_SIDE_LEFT, PA_CHANNEL_POSITION_SIDE_RIGHT, PA_CHANNEL_POSITION_MONO <repeats 24 times>}}, pa_rec_map = {channels = 0 '\000', map = {PA_CHANNEL_POSITION_MONO <repeats 32 times>}}, output_device_name = {_cowdata = {_ptr = 0xa831a20 U"Default"}, static _null = 0 U'\000', static invalid_node_name_characters = {_cowdata = {_ptr = 0xa81fc10 U". : @ / \" %"}, static _null = 0 U'\000',
static invalid_node_name_characters = <same as static member of an already seen type>}}, new_output_device = {_cowdata = {_ptr = 0xa831a60 U"Default"}, static _null = 0 U'\000', static invalid_node_name_characters = {_cowdata = {_ptr = 0xa81fc10 U". : @ / \" %"}, static _null = 0 U'\000', static invalid_node_name_characters = <same as static member of an already seen type>}}, default_output_device = {_cowdata = {
_ptr = 0x7fffb4001620 U"alsa_output.usb-Generic_USB_Audio-00.analog-stereo"}, static _null = 0 U'\000', static invalid_node_name_characters = {_cowdata = {_ptr = 0xa81fc10 U". : @ / \" %"}, static _null = 0 U'\000', static invalid_node_name_characters = <same as static member of an already seen type>}}, input_device_name = {_cowdata = {_ptr = 0x0}, static _null = 0 U'\000', static invalid_node_name_characters = {_cowdata = {
_ptr = 0xa81fc10 U". : @ / \" %"}, static _null = 0 U'\000', static invalid_node_name_characters = <same as static member of an already seen type>}}, new_input_device = {_cowdata = {_ptr = 0x0}, static _null = 0 U'\000', static invalid_node_name_characters = {_cowdata = {_ptr = 0xa81fc10 U". : @ / \" %"}, static _null = 0 U'\000', static invalid_node_name_characters = <same as static member of an already seen type>}}, default_input_device = {_cowdata = {
_ptr = 0xc3aeee0 U"alsa_input.usb-C-Media_Electronics_Inc._USB_Advanced_Audio_Device-00.analog-stereo"}, static _null = 0 U'\000', static invalid_node_name_characters = {_cowdata = {_ptr = 0xa81fc10 U". : @ / \" %"}, static _null = 0 U'\000', static invalid_node_name_characters = <same as static member of an already seen type>}}, samples_in = {write = {<No data fields>}, _cowdata = {_ptr = 0xc64dd00}}, samples_out = {write = {<No data fields>}, _cowdata = {
_ptr = 0xc64ed20}}, mix_rate = 44100, buffer_frames = 512, pa_buffer_size = 1024, channels = 2, pa_ready = 1, pa_status = 1, pa_devices = {write = {<No data fields>}, _cowdata = {_ptr = 0x0}}, pa_rec_devices = {write = {<No data fields>}, _cowdata = {_ptr = 0x0}}, active = {flag = std::atomic<bool> = { true }}, exit_thread = {flag = std::atomic<bool> = { false }}, latency = 0}, crash_handler = {disabled = false}, main_loop = 0xd0d22d0,
system_dir_desktop_cache = {_cowdata = {_ptr = 0xa8fe1f0 U"/home/hugo/Desktop"}, static _null = 0 U'\000', static invalid_node_name_characters = {_cowdata = {_ptr = 0xa81fc10 U". : @ / \" %"}, static _null = 0 U'\000', static invalid_node_name_characters = <same as static member of an already seen type>}}}
run_test = false
return_code = 0
cwd = 0xa8feb80 "/tmp/Spaceship3000"
__FUNCTION__ = "main"
ret = 0xa8feb80 "/tmp/Spaceship3000"
err = OK
Unloading a scene with animated texture crashes. $ > double free or corruption (fasttop)
Another thing is that it only happens in compatibility mode. I test too in Forward+ and Mobile and don't happens.
Also, it doesn't happen if you don't switch here the TextureRect visible→invisible: animated_texture_bug_v2.zip
crash...(gdb) bt
#0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
#1 0x00007ffff7c5a859 in __GI_abort () at abort.c:79
#2 0x00007ffff7cc526e in __libc_message (action=action@entry=do_abort, fmt=fmt@entry=0x7ffff7def298 "%s\n") at ../sysdeps/posix/libc_fatal.c:155
#3 0x00007ffff7ccd2fc in malloc_printerr (str=str@entry=0x7ffff7df1628 "double free or corruption (fasttop)") at malloc.c:5347
#4 0x00007ffff7ccec65 in _int_free (av=0x7ffff7e24b80 <main_arena>, p=0x55555fffa560, have_lock=0) at malloc.c:4266
#5 0x000055555728339b in memdelete<GLES3::CanvasTexture> (p_class=<optimized out>) at ./core/os/memory.h:104
#6 GLES3::TextureStorage::texture_free (this=0x55555daae6b0, p_texture=...) at drivers/gles3/storage/texture_storage.cpp:704
#7 0x00005555572930a9 in GLES3::Utilities::free (this=<optimized out>, p_rid=...) at drivers/gles3/storage/utilities.cpp:124
#8 0x000055555997194a in RenderingServerDefault::_free (this=<optimized out>, p_rid=...) at servers/rendering/rendering_server_default.cpp:51
#9 0x00005555592c7e22 in CompressedTexture2D::~CompressedTexture2D (this=0x55555f74c4a0, __in_chrg=<optimized out>) at scene/resources/texture.cpp:1079
#10 0x00005555560d676e in memdelete<Texture2D> (p_class=0x55555f74c4a0) at ./core/os/memory.h:104
#11 memdelete<Texture2D> (p_class=0x55555f74c4a0) at ./core/os/memory.h:104
#12 0x00005555592dd526 in Ref<Texture2D>::unref (this=0x55555ffef728) at ./core/object/ref_counted.h:232
#13 Ref<Texture2D>::~Ref (this=0x55555ffef728, __in_chrg=<optimized out>) at ./core/object/ref_counted.h:233
#14 AnimatedTexture::Frame::~Frame (this=0x55555ffef728, __in_chrg=<optimized out>) at scene/resources/texture.h:910
#15 AnimatedTexture::~AnimatedTexture (this=0x55555ffef3f0, __in_chrg=<optimized out>) at scene/resources/texture.cpp:2822
#16 0x00005555560d676e in memdelete<Texture2D> (p_class=0x55555ffef3f0) at ./core/os/memory.h:104
#17 memdelete<Texture2D> (p_class=0x55555ffef3f0) at ./core/os/memory.h:104
#18 0x00005555588d1b7c in Ref<Texture2D>::unref (this=0x55555f779920) at ./core/string/string_name.h:182
#19 Ref<Texture2D>::~Ref (this=0x55555f779920, __in_chrg=<optimized out>) at ./core/object/ref_counted.h:233
#20 TextureRect::~TextureRect (this=0x55555f778fa0, __in_chrg=<optimized out>) at scene/gui/texture_rect.cpp:278
#21 0x0000555557759afe in memdelete<Node> (p_class=0x55555f778fa0) at ./core/os/memory.h:104
#22 memdelete<Node> (p_class=0x55555f778fa0) at ./core/os/memory.h:104
#23 0x00005555584f0ac9 in Node::_notification (this=0x55555ffeb010, p_notification=<optimized out>) at scene/main/node.cpp:170
#24 0x000055555a7dbe48 in Object::notification (this=0x55555ffeb010, p_notification=1, p_reversed=<optimized out>) at core/object/object.cpp:790
#25 0x000055555a7de70e in Object::_predelete (this=0x55555ffeb010) at core/object/object.cpp:196
#26 predelete_handler (p_object=p_object@entry=0x55555ffeb010) at core/object/object.cpp:1825
#27 0x0000555557759aed in memdelete<Node> (p_class=0x55555ffeb010) at ./core/os/memory.h:104
#28 0x000055555851dd51 in SceneTree::_change_scene (this=0x55555f67b8a0, p_to=0x55555fff41e0) at scene/main/scene_tree.cpp:1105
#29 0x00005555574765d9 in call_with_variant_args_helper<__UnexistingClass, Node*, 0ul> (r_error=..., p_args=<synthetischer Zeiger>, p_method=<optimized out>, p_instance=<optimized out>) at ./core/object/object.h:753
#30 call_with_variant_args_dv<__UnexistingClass, Node*> (default_values=..., r_error=..., p_argcount=<optimized out>, p_args=<optimized out>, p_method=<optimized out>, p_instance=<optimized out>)
at ./core/variant/binder_common.h:440
#31 MethodBindT<Node*>::call (this=<optimized out>, p_object=<optimized out>, p_args=<optimized out>, p_arg_count=<optimized out>, r_error=...) at ./core/object/method_bind.h:324
#32 0x000055555a7dc057 in Object::callp (this=0x55555f67b8a0, p_method=..., p_args=0x7fffffffd580, p_argcount=1, r_error=...) at core/object/object.cpp:733
#33 0x000055555a4fd056 in Callable::callp (this=this@entry=0x7ffff525a020, p_arguments=p_arguments@entry=0x7fffffffd580, p_argcount=p_argcount@entry=1, r_return_value=..., r_call_error=...) at core/variant/callable.cpp:62
#34 0x000055555a7d75fa in MessageQueue::_call_function (this=<optimized out>, p_callable=..., p_args=<optimized out>, p_argcount=1, p_show_error=<optimized out>) at core/object/message_queue.cpp:229
#35 0x000055555a7d799c in MessageQueue::flush (this=0x55555d7167f0) at core/object/message_queue.cpp:275
#36 0x0000555558528d75 in SceneTree::physics_process (this=0x55555f67b8a0, p_time=0.016666666666666666) at scene/main/scene_tree.cpp:430
#37 0x0000555556106677 in Main::iteration () at main/main.cpp:3123
#38 0x00005555560a15e1 in OS_LinuxBSD::run (this=0x7fffffffd7f0) at platform/linuxbsd/os_linuxbsd.cpp:880
#39 0x0000555556091c31 in main (argc=<optimized out>, argv=0x7fffffffdd28) at platform/linuxbsd/godot_linuxbsd.cpp:73
double free or corruption (fasttop) or corrupted size vs. prev_size in fastbins
Linux, commit 013a45706897af989703b944c7cd5f4f58a6c060 (HEAD -> master) Date: Tue Mar 7 12:05:20 2023 +0100