Skip to content
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

Crash when hovering the mouse over Favorites in the FileSystem dock #77425

Closed
Rindbee opened this issue May 24, 2023 · 1 comment · Fixed by #77435
Closed

Crash when hovering the mouse over Favorites in the FileSystem dock #77425

Rindbee opened this issue May 24, 2023 · 1 comment · Fixed by #77435

Comments

@Rindbee
Copy link
Contributor

Rindbee commented May 24, 2023

Godot version

v4.1.dev.custom_build [f581f21]

System information

Linux Mint 21.1, NVIDIA GeForce GTX 1050 Ti, Vulkan API 1.3.205

Issue description

================================================================
handle_crash: Program crashed with signal 11
Engine version: Godot Engine v4.1.dev.custom_build (27dccf1b5e4ffe2f499407026f0b789491335582)
Dumping the backtrace. Please include this when reporting the bug to the project developer.
[1] /lib/x86_64-linux-gnu/libc.so.6(+0x42520) [0x7ff9ad001520] (??:0)
[2] EditorResourceTooltipPlugin::make_default_tooltip(String const&) (/opt/godot/godot-editor-l10n/godot/editor/plugins/editor_resource_tooltip_plugins.cpp:71)
[3] FileSystemDock::create_tooltip_for_path(String const&) const (/opt/godot/godot-editor-l10n/godot/editor/filesystem_dock.cpp:2300)
[4] FileSystemTree::make_custom_tooltip(String const&) const (/opt/godot/godot-editor-l10n/godot/editor/filesystem_dock.cpp:68)
[5] Viewport::_gui_show_tooltip() (/opt/godot/godot-editor-l10n/godot/scene/main/viewport.cpp:1422)
[6] void call_with_variant_args_helper<Viewport>(Viewport*, void (Viewport::*)(), Variant const**, Callable::CallError&, IndexSequence<>) (/opt/godot/godot-editor-l10n/godot/./core/variant/binder_common.h:308)
[7] void call_with_variant_args<Viewport>(Viewport*, void (Viewport::*)(), Variant const**, int, Callable::CallError&) (/opt/godot/godot-editor-l10n/godot/./core/variant/binder_common.h:418)
[8] CallableCustomMethodPointer<Viewport>::call(Variant const**, int, Variant&, Callable::CallError&) const (/opt/godot/godot-editor-l10n/godot/./core/object/callable_method_pointer.h:105)
[9] Callable::callp(Variant const**, int, Variant&, Callable::CallError&) const (/opt/godot/godot-editor-l10n/godot/core/variant/callable.cpp:51)
[10] Object::emit_signalp(StringName const&, Variant const**, int) (/opt/godot/godot-editor-l10n/godot/core/object/object.cpp:1068)
[11] Error Object::emit_signal<>(StringName const&) (/opt/godot/godot-editor-l10n/godot/./core/object/object.h:870)
[12] SceneTree::process_timers(double, bool) (/opt/godot/godot-editor-l10n/godot/scene/main/scene_tree.cpp:575)
[13] SceneTree::process(double) (/opt/godot/godot-editor-l10n/godot/scene/main/scene_tree.cpp:514)
[14] Main::iteration() (/opt/godot/godot-editor-l10n/godot/main/main.cpp:3334)
[15] OS_LinuxBSD::run() (/opt/godot/godot-editor-l10n/godot/platform/linuxbsd/os_linuxbsd.cpp:899)
[16] /opt/godot/godot-editor-l10n/godot/bin/godot.linuxbsd.editor.dev.x86_64.llvm(main+0x1fe) [0x55cf1953686e] (/opt/godot/godot-editor-l10n/godot/platform/linuxbsd/godot_linuxbsd.cpp:73)
[17] /lib/x86_64-linux-gnu/libc.so.6(+0x29d90) [0x7ff9acfe8d90] (??:0)
[18] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x80) [0x7ff9acfe8e40] (??:0)
[19] /opt/godot/godot-editor-l10n/godot/bin/godot.linuxbsd.editor.dev.x86_64.llvm(_start+0x25) [0x55cf195365a5] (??:?)
-- END OF BACKTRACE --
================================================================

0

This is a regression from #63263. cc @KoBeWi

Steps to reproduce

Just hover your mouse over the Favorites in the FileSystem dock.

Minimal reproduction project

N/A

@YuriSizov
Copy link
Contributor

YuriSizov commented May 24, 2023

Happens because we try to treat the string "Favorites" as a filepath. It seems that for this case FileSystemDock has a bunch of checks if the value stored in the metadata equals "Favorites". Wondering if it can be implemented better (or at least string comparison could be more efficient, perhaps?)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants