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

[Godot 4.2] File dialog crashes when adjusting filter array #80464

Closed
RechieKho opened this issue Aug 10, 2023 · 1 comment
Closed

[Godot 4.2] File dialog crashes when adjusting filter array #80464

RechieKho opened this issue Aug 10, 2023 · 1 comment

Comments

@RechieKho
Copy link
Contributor

Godot version

Godot Engine v4.2.dev.custom_build

System information

Arch Linux, AMD ATI Radeon Vega Series / Radeon Vega Mobile Series, CPU: AMD Ryzen 3 3200G (4) @ 3.600GHz

Issue description

Godot crash when adjusting the string's index of filter (PackedStringArray) of FileDialog.

Here is the backtrace:

================================================================
handle_crash: Program crashed with signal 4
Engine version: Godot Engine v4.2.dev.custom_build (40bdd3c504ccdd42b5ab321af626b0a737f12afb)
Dumping the backtrace. Please include this when reporting the bug to the project developer.
[1] /usr/lib/libc.so.6(+0x3e710) [0x7f235583e710] (??:0)
[2] Window::_event_callback(DisplayServer::WindowEvent) (/home/rechie/Documents/cxx_projects/gobread/scene/main/window.cpp:675)
[3] void call_with_variant_args_helper<Window, DisplayServer::WindowEvent, 0ul>(Window*, void (Window::*)(DisplayServer::WindowEvent), Variant const**, Callable::CallError&, IndexSequence<0ul>) (/home/rechie/Documents/cxx_projects/gobread/./core/variant/binder_common.h:308)
[4] void call_with_variant_args<Window, DisplayServer::WindowEvent>(Window*, void (Window::*)(DisplayServer::WindowEvent), Variant const**, int, Callable::CallError&) (/home/rechie/Documents/cxx_projects/gobread/./core/variant/binder_common.h:418)
[5] CallableCustomMethodPointer<Window, DisplayServer::WindowEvent>::call(Variant const**, int, Variant&, Callable::CallError&) const (/home/rechie/Documents/cxx_projects/gobread/./core/object/callable_method_pointer.h:?)
[6] Callable::callp(Variant const**, int, Variant&, Callable::CallError&) const (/home/rechie/Documents/cxx_projects/gobread/core/variant/callable.cpp:51)
[7] DisplayServerX11::_send_window_event(DisplayServerX11::WindowData const&, DisplayServer::WindowEvent) (/home/rechie/Documents/cxx_projects/gobread/platform/linuxbsd/x11/display_server_x11.cpp:3771)
[8] DisplayServerX11::mouse_set_mode(DisplayServer::MouseMode) (/home/rechie/Documents/cxx_projects/gobread/platform/linuxbsd/x11/display_server_x11.cpp:383)
[9] DisplayServer::_input_set_mouse_mode(Input::MouseMode) (/home/rechie/Documents/cxx_projects/gobread/servers/display_server.cpp:944)
[10] Input::set_mouse_mode(Input::MouseMode) (/home/rechie/Documents/cxx_projects/gobread/core/input/input.cpp:90)
[11] EditorPropertyArray::_reorder_button_up() (/home/rechie/Documents/cxx_projects/gobread/editor/editor_properties_array_dict.cpp:688)
[12] void call_with_variant_args_helper<EditorPropertyArray>(EditorPropertyArray*, void (EditorPropertyArray::*)(), Variant const**, Callable::CallError&, IndexSequence<>) (/home/rechie/Documents/cxx_projects/gobread/./core/variant/binder_common.h:308)
[13] void call_with_variant_args<EditorPropertyArray>(EditorPropertyArray*, void (EditorPropertyArray::*)(), Variant const**, int, Callable::CallError&) (/home/rechie/Documents/cxx_projects/gobread/./core/variant/binder_common.h:418)
[14] CallableCustomMethodPointer<EditorPropertyArray>::call(Variant const**, int, Variant&, Callable::CallError&) const (/home/rechie/Documents/cxx_projects/gobread/./core/object/callable_method_pointer.h:?)
[15] Callable::callp(Variant const**, int, Variant&, Callable::CallError&) const (/home/rechie/Documents/cxx_projects/gobread/core/variant/callable.cpp:51)
[16] Object::emit_signalp(StringName const&, Variant const**, int) (/home/rechie/Documents/cxx_projects/gobread/core/object/object.cpp:1072)
[17] Node::emit_signalp(StringName const&, Variant const**, int) (/home/rechie/Documents/cxx_projects/gobread/scene/main/node.cpp:3576)
[18] Error Object::emit_signal<>(StringName const&) (/home/rechie/Documents/cxx_projects/gobread/./core/object/object.h:891)
[19] BaseButton::on_action_event(Ref<InputEvent>) (/home/rechie/Documents/cxx_projects/gobread/scene/gui/base_button.cpp:186)
[20] BaseButton::gui_input(Ref<InputEvent> const&) (/home/rechie/Documents/cxx_projects/gobread/scene/gui/base_button.cpp:69)
[21] Control::_call_gui_input(Ref<InputEvent> const&) (/home/rechie/Documents/cxx_projects/gobread/scene/gui/control.cpp:?)
[22] Viewport::_gui_call_input(Control*, Ref<InputEvent> const&) (/home/rechie/Documents/cxx_projects/gobread/scene/main/viewport.cpp:1562)
[23] Viewport::_gui_input_event(Ref<InputEvent>) (/home/rechie/Documents/cxx_projects/gobread/scene/main/viewport.cpp:1831)
[24] Viewport::push_input(Ref<InputEvent> const&, bool) (/home/rechie/Documents/cxx_projects/gobread/scene/main/viewport.cpp:3128)
[25] Window::_window_input(Ref<InputEvent> const&) (/home/rechie/Documents/cxx_projects/gobread/scene/main/window.cpp:?)
[26] void call_with_variant_args_helper<Window, Ref<InputEvent> const&, 0ul>(Window*, void (Window::*)(Ref<InputEvent> const&), Variant const**, Callable::CallError&, IndexSequence<0ul>) (/home/rechie/Documents/cxx_projects/gobread/./core/variant/binder_common.h:303)
[27] void call_with_variant_args<Window, Ref<InputEvent> const&>(Window*, void (Window::*)(Ref<InputEvent> const&), Variant const**, int, Callable::CallError&) (/home/rechie/Documents/cxx_projects/gobread/./core/variant/binder_common.h:418)
[28] CallableCustomMethodPointer<Window, Ref<InputEvent> const&>::call(Variant const**, int, Variant&, Callable::CallError&) const (/home/rechie/Documents/cxx_projects/gobread/./core/object/callable_method_pointer.h:?)
[29] Callable::callp(Variant const**, int, Variant&, Callable::CallError&) const (/home/rechie/Documents/cxx_projects/gobread/core/variant/callable.cpp:51)
[30] DisplayServerX11::_dispatch_input_event(Ref<InputEvent> const&) (/home/rechie/Documents/cxx_projects/gobread/platform/linuxbsd/x11/display_server_x11.cpp:3751)
[31] DisplayServerX11::_dispatch_input_events(Ref<InputEvent> const&) (/home/rechie/Documents/cxx_projects/gobread/platform/linuxbsd/x11/display_server_x11.cpp:3723)
[32] Input::_parse_input_event_impl(Ref<InputEvent> const&, bool) (/home/rechie/Documents/cxx_projects/gobread/core/input/input.cpp:721)
[33] Input::flush_buffered_events() (/home/rechie/Documents/cxx_projects/gobread/core/input/input.cpp:979)
[34] DisplayServerX11::process_events() (/home/rechie/Documents/cxx_projects/gobread/platform/linuxbsd/x11/display_server_x11.cpp:4819)
[35] OS_LinuxBSD::run() (/home/rechie/Documents/cxx_projects/gobread/platform/linuxbsd/os_linuxbsd.cpp:908)
[36] gobread(main+0x22b) [0x563a0e080f8b] (/home/rechie/Documents/cxx_projects/gobread/platform/linuxbsd/godot_linuxbsd.cpp:74)
[37] /usr/lib/libc.so.6(+0x27cd0) [0x7f2355827cd0] (??:0)
[38] /usr/lib/libc.so.6(__libc_start_main+0x8a) [0x7f2355827d8a] (??:0)
[39] gobread(_start+0x25) [0x563a0e080c85] (??:?)
-- END OF BACKTRACE --
================================================================
Aborted (core dumped)

Steps to reproduce

  1. Create a FileDialog
  2. Create 2 filter string under filter
  3. Write some text in the first filter string
  4. Adjust the empty filter string before filled filter string.
  5. Godot crash.

Minimal reproduction project

"N/A"

@Sauermann
Copy link
Contributor

Please update to current master. This has already been fixed in #80187 / #80279.
Closing as duplicate of #80335 (same cause)

@Sauermann Sauermann closed this as not planned Won't fix, can't repro, duplicate, stale Aug 10, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants