godotengine / godot

Godot Engine – Multi-platform 2D and 3D game engine
https://godotengine.org
MIT License
91.17k stars 21.2k forks source link

macOS: If editor_doc_cache.res exist in the "cache/godot" , project will crash while opening #90469

Open waci11 opened 7 months ago

waci11 commented 7 months ago

Tested versions

Godot 4.2.1 stable Yesterday I closed the project as usual, but today I can't open it anymore can not reproduce

System information

MacOS 12.7.4 -Godot 4.2.1 stable -Vulkan API 1.2.231 - Forward Mobile - Using Vulkan Device #0: Intel - Intel HD Graphics 5000

Issue description

editor_doc_cache.res is created by which project do not matter. Delete "cacha/godot" and create an empty project ,that project can be opened many times without crashing. But once you try to open the problematic project, it will crash. Delete editor_doc_cache.res then open the problematic project again, it won't crash.  Changing "rendering/renderer/rendering_method" in ProjectSetting from Mobile to GL Compatibilitythe can also avoid crash.

the log with godot -e -v --path[problematic project path]:

Loaded system CA certificates
Creating VMA small objects pool for memory type index 1

================================================================
handle_crash: Program crashed with signal 11
Engine version: Godot Engine v4.2.1.stable.official (b09f793f564a6c95dc76acc654b390e68441bd01)
Dumping the backtrace. Please include this when reporting the bug to the project developer.
[1] 1   libsystem_platform.dylib            0x00007ff807436dfd _sigtramp + 29
[2] 2   ???                                 0x00007fba2c6393c0 0x0 + 140437585368000
[3] void rx::mtl::GetMatrixUniformMetal<unsigned int>(unsigned int, unsigned int*, unsigned int const*, bool)
[4] void rx::mtl::GetMatrixUniformMetal<unsigned int>(unsigned int, unsigned int*, unsigned int const*, bool)
[5] void rx::mtl::GetMatrixUniformMetal<unsigned int>(unsigned int, unsigned int*, unsigned int const*, bool)
[6] Ref<DirAccess> DirAccess::_create_builtin<DirAccessUnix>()
[7] Ref<DirAccess> DirAccess::_create_builtin<DirAccessUnix>()
[8] Ref<DirAccess> DirAccess::_create_builtin<DirAccessUnix>()
[9] RenderSceneBuffersRD::get_use_taa() const
[10] RendererSceneCull::Instance::dependency_deleted(RID const&, DependencyTracker*)
[11] Gradient::get_color_at_offset(float)
[12] Ref<DirAccess> DirAccess::_create_builtin<DirAccessMacOS>()
[13] ItemList::get_v_scroll_bar()
[14] ItemList::get_v_scroll_bar()
[15] ItemList::get_v_scroll_bar()
[16] CallableCustomExtension::default_compare_less(CallableCustom const*, CallableCustom const*)
[17] CanvasItem::get_canvas_item() const
[18] ItemList::get_v_scroll_bar()
[19] CallableCustomExtension::default_compare_less(CallableCustom const*, CallableCustom const*)
[20] Node::get_tree() const
[21] Node::get_tree() const
[22] Node::get_tree() const
[23] Node::get_tree() const
[24] Node::get_tree() const
[25] Node::get_tree() const
[26] Node::get_index(bool) const
[27] void rx::mtl::GetMatrixUniformMetal<unsigned int>(unsigned int, unsigned int*, unsigned int const*, bool)
[28] RendererCompositorRD::_create_current()
[29] 29  dyld                                0x000000011219d52e start + 462
-- END OF BACKTRACE --
================================================================

Steps to reproduce

can not reproduce

Minimal reproduction project (MRP)

can not reproduce , move the problematic project to another Mac(MacOS 10.15.7-Godot 4.2.1 stable) , it will not crash while opening anymore.

akien-mga commented 7 months ago

Might be related to https://github.com/godotengine/godot/issues/89678.

CC @bruvzg @RandomShaper

bruvzg commented 7 months ago

I was not able to reproduce https://github.com/godotengine/godot/issues/89678, but if it's crashing if resource exist, it might explain it (old resource for might be incompatible in some way, or is it created by the same Godot version?).