czkawka icon indicating copy to clipboard operation
czkawka copied to clipboard

SIGSEGV on msys2 built czkawka_gui

Open ognevny opened this issue 1 year ago • 6 comments

Desktop (please complete the following information):

  • Czkawka version: 6.1.0 gui
  • OS version: Windows 11
  • Terminal output[optional]: 'czkawka_gui' terminated by signal SIGSEGV (Address boundary error)

Bug Description czkawka_gui from msys2 (x86_64-pc-windows-gnu target) crashes on startup with SIGSEGV error

extra note: 6.0.0 worked fine, but only with light theme

ognevny avatar Nov 24 '23 15:11 ognevny

I tried to install:

mingw-w64-clang-i686-czkawka-gui
mingw-w64-clang-x86_64-czkawka-gui
mingw-w64-x86_64-czkawka-gui
mingw-w64-ucrt-x86_64-czkawka-gui

and run also official version from - https://github.com/qarmin/czkawka/releases/download/6.1.0/windows_czkawka_gui.zip

and I got crashes only with clang(I don't know how to check what is exactly problem because gdb not works)

In the past I have had problems that windows would stop running the application at completely random moments and the solution to the problem always turned out to be restoring the snapshot in virtualbox, but exact cause is still unknown for me(maybe windows update?)

https://github.com/qarmin/czkawka/assets/41945903/cd0cb75e-84e0-41ec-ba5b-66eb70430c13

qarmin avatar Nov 24 '23 16:11 qarmin

oops, forgot to mention that I tried only for x86-64-clang. maybe that's a clang issue

anyway thanks for investigation!

edit: how to use gdb for czkawka?

ognevny avatar Nov 24 '23 16:11 ognevny

I don't know how to check what is exactly problem because gdb not works

FYI, binaries are stripped by default. you can rebuild the package manually by adding options=('!strip') before prepare()

ognevny avatar Nov 24 '23 16:11 ognevny

Thread 1 "main" received signal SIGSEGV, Segmentation fault.
0x0000000000d93176 in ?? ()
(gdb) bt
#0  0x0000000000d93176 in ?? ()
#1  0x00007ff60514a069 in std::sys::windows::handle::Handle::synchronous_write::h65d2b1f7e1d46b50 ()
#2  0x00007ff60513be99 in <std::fs::File as std::io::Write>::write::h6edd54bc2b5992cb ()
#3  0x00007ff604ef3fb4 in std::io::Write::write_all::h709b35a325d1adfb ()
#4  0x00007ff604ef92b8 in <std::io::Write::write_fmt::Adapter<T> as core::fmt::Write>::write_str::h363771f11cc25a5f ()
#5  0x00007ff6051713bd in core::fmt::write::hed9348a5e64c5bb2 ()
#6  0x00007ff604ef40cb in std::io::Write::write_fmt::h1a1195cc9f656fcf ()
#7  0x00007ff604ed9d22 in czkawka_gui::gui_structs::gui_bottom_buttons::GuiBottomButtons::create_from_builder::h6af9efffefc54ee9 ()
#8  0x00007ff604f6ed1b in czkawka_gui::connect_things::connect_popovers_sort::popover_sort_general::hcc44935741aa770a ()
#9  0x00007ff604f76f01 in czkawka_gui::build_ui::hdcb2ba21cc4256f4 ()
#10 0x00007ff604f944f4 in gio::auto::application::ApplicationExt::connect_command_line::command_line_trampoline::h437bdb049f0a6378 ()
#11 0x00007ffa5fa58c20 in _g_cclosure_marshal_INT__OBJECT () from C:\msys64\clang64\bin\libgio-2.0-0.dll
#12 0x00007ffa76e59346 in g_closure_invoke () from C:\msys64\clang64\bin\libgobject-2.0-0.dll
#13 0x00007ffa76e7237f in g_clear_signal_handler () from C:\msys64\clang64\bin\libgobject-2.0-0.dll
#14 0x00007ffa76e7104e in g_signal_emit_valist () from C:\msys64\clang64\bin\libgobject-2.0-0.dll
#15 0x00007ffa76e71711 in g_signal_emit () from C:\msys64\clang64\bin\libgobject-2.0-0.dll
#16 0x00007ffa5fac0afc in g_application_run () from C:\msys64\clang64\bin\libgio-2.0-0.dll
#17 0x00007ffa5fac29ef in g_application_unbind_busy_property () from C:\msys64\clang64\bin\libgio-2.0-0.dll
#18 0x00007ffa5fac082d in g_application_run () from C:\msys64\clang64\bin\libgio-2.0-0.dll
#19 0x00007ff604f219c9 in gio::application::ApplicationExtManual::run_with_args::hd488fefb5769265e ()
#20 0x00007ff604f76e26 in czkawka_gui::gui_structs::gui_data::GuiData::update_language::h734971c40c7710db ()
#21 0x00007ff604f80046 in std::sys_common::backtrace::__rust_begin_short_backtrace::h7c1a44cb5fdad8f1 ()
#22 0x00007ff604f9fc9c in std::rt::lang_start::{{closure}}::h89614e90459a66aa ()
#23 0x00007ff605164b8a in std::rt::lang_start_internal::h245573006cf9c3b4 ()
#24 0x00007ff604f7c74d in main ()

lazka avatar Nov 24 '23 17:11 lazka

thanks!

ognevny avatar Nov 24 '23 17:11 ognevny

From app perspective, this backtrace is really strange because popover_sort_general never calls GuiBottomButtons::create_from_builder and is executed after this function.

Also crash happens in rust internals, not in czkawka code

qarmin avatar Nov 24 '23 18:11 qarmin

now works at 7.0.0

ognevny avatar Feb 19 '24 13:02 ognevny