Closed qarmin closed 2 years ago
Another crash
var temp_variable10270 = SoftBody.new()
add_child(temp_variable10270)
temp_variable10270.set_physics_enabled(false)
temp_variable10270.set_mesh(QuadMesh.new())
temp_variable10270.set_physics_enabled(true)
temp_variable10270.is_blocking_signals()
================================================================
handle_crash: Program crashed with signal 11
Engine version: Godot Engine v3.4.beta.custom_build (01ae4888e938cee7e067f0aa09d1298ae40e78b8)
Dumping the backtrace. Please include this when reporting the bug on https://github.com/godotengine/godot/issues
[1] /lib/x86_64-linux-gnu/libc.so.6(+0x41040) [0x7f68bc409040] (??:0)
[2] btAlignedObjectArray<btSoftBody::Node>::size() const (/mnt/Miecz/godot3.2/thirdparty/bullet/LinearMath/btAlignedObjectArray.h:144)
[3] SoftBodyBullet::reset_all_node_positions() (/mnt/Miecz/godot3.2/modules/bullet/soft_body_bullet.cpp:239)
[4] SoftBodyBullet::set_soft_transform(Transform const&) (/mnt/Miecz/godot3.2/modules/bullet/soft_body_bullet.cpp:152)
[5] BulletPhysicsServer::soft_body_set_transform(RID, Transform const&) (/mnt/Miecz/godot3.2/modules/bullet/bullet_physics_server.cpp:1005)
[6] SoftBody::_notification(int) (/mnt/Miecz/godot3.2/scene/3d/soft_body.cpp:288)
[7] SoftBody::_notificationv(int, bool) (/mnt/Miecz/godot3.2/scene/3d/soft_body.h:66 (discriminator 14))
[8] Object::notification(int, bool) (/mnt/Miecz/godot3.2/core/object.cpp:929)
[9] SceneTree::flush_transform_notifications() (/mnt/Miecz/godot3.2/scene/main/scene_tree.cpp:153)
[10] SceneTree::idle(float) (/mnt/Miecz/godot3.2/scene/main/scene_tree.cpp:541)
[11] Main::iteration() (/mnt/Miecz/godot3.2/main/main.cpp:2183)
[12] OS_X11::run() (/mnt/Miecz/godot3.2/platform/x11/os_x11.cpp:3641)
[13] godot(main+0x125) [0x179933b] (/mnt/Miecz/godot3.2/platform/x11/godot_x11.cpp:57)
[14] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xd5) [0x7f68bc3f0565] (??:0)
[15] godot(_start+0x2e) [0x179915e] (??:?)
-- END OF BACKTRACE --
================================================================
couldn't reproduce first crash on Windows 10, 64 bits
Looks that this code corrupts memory and don't crash entire app.
To corrupt more memory which cause for me crash even with build without sanitizers you can use this code
func _process(delta) -> void:
var temp_variable10264 = SoftBody.new()
add_child(temp_variable10264)
temp_variable10264.set_physics_enabled(false)
temp_variable10264.set_mesh(PlaneMesh.new())
temp_variable10264.set_physics_enabled(true)
temp_variable10264.get_point_transform(randi() % 1000)
found out that btAssert isn't defined when when debugging and adding BT_DEBUG through bullet module's SCsub doesn't seem to define it as well. This causes operator[] of tNodeArray (btAlignedObjectArray) to return data outside of array's bounds
Fixed by #53349 and #53335.
Godot version
3.4.beta.custom_build. 01ae4888e
System information
Ubuntu 21.04 - Nvidia GTX 970, Gnome shell 3.38 X11
Issue description
When executing
Godot crashes with this info
Steps to reproduce
Above
Minimal reproduction project
No response