Hoglet / TimeIT

The unobtrusive time tracker
GNU General Public License v3.0
19 stars 7 forks source link

Segfault when adding a new task #20

Closed hackel closed 5 years ago

hackel commented 6 years ago

So, this is strange. I haven't touched my build of TimeIT in ages, but upgrading one of its dependencies recently must have triggered this. Whenever I try to create a new task (either root or sub-task), TimeIT segfaults. I have tried doing this with a fresh ~/.config/TimeIT directory with the same result.

Thread 1 "timeit" received signal SIGSEGV, Segmentation fault.

#0  0x00007ffff526f011 in __memmove_avx_unaligned_erms () at ../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S:427
#1  0x00007ffff580c9f3 in std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_assign(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) () at /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#2  0x00007ffff580cd09 in std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::operator=(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) () at /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#3  0x00005555556c9945 in Workspace::get_name[abi:cxx11](int) ()
#4  0x000055555568d55e in GUI::EditTaskDialog::createLayout() ()
#5  0x000055555568c81e in GUI::EditTaskDialog::EditTaskDialog(std::shared_ptr<DB::IDatabase>&) ()
#6  0x0000555555691c87 in GUI::GUIFactory::getWidget(GUI::EWidget) ()
#7  0x00005555556c2d4c in Controller::on_action_add_task() ()
#8  0x00005555556ace40 in GUI::TaskList::on_menu_add_task() ()
#9  0x00005555556ade4a in sigc::bound_mem_functor0<void, GUI::TaskList>::operator()() const ()
#10 0x00005555556add94 in sigc::adaptor_functor<sigc::bound_mem_functor0<void, GUI::TaskList> >::operator()() const ()
#11 0x00005555556adc0e in sigc::internal::slot_call0<sigc::bound_mem_functor0<void, GUI::TaskList>, void>::call_it(sigc::internal::slot_rep*) ()
#12 0x00007ffff7103458 in Glib::SignalProxyNormal::slot0_void_callback(_GObject*, void*) () at /usr/lib/x86_64-linux-gnu/libglibmm-2.4.so.1
#13 0x00007ffff6c5cf9d in g_closure_invoke () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#14 0x00007ffff6c6fb55 in  () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#15 0x00007ffff6c784b5 in g_signal_emit_valist () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#16 0x00007ffff6c78ecf in g_signal_emit () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#17 0x00007ffff44face6 in gtk_widget_activate () at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#18 0x00007ffff43f7e3d in gtk_menu_shell_activate_item () at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#19 0x00007ffff43f8162 in  () at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#20 0x00007ffff43e5b7b in  () at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#21 0x00007ffff6c5cf9d in g_closure_invoke () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#22 0x00007ffff6c6f758 in  () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#23 0x00007ffff6c77e4f in g_signal_emit_valist () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#24 0x00007ffff6c78ecf in g_signal_emit () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#25 0x00007ffff44fbf9c in  () at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#26 0x00007ffff43e431c in gtk_propagate_event () at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#27 0x00007ffff43e471b in gtk_main_do_event () at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#28 0x00007ffff4059f0c in  () at /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#29 0x00007ffff6983fb7 in g_main_context_dispatch () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#30 0x00007ffff69841f0 in  () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#31 0x00007ffff6984502 in g_main_loop_run () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#32 0x00007ffff43e3727 in gtk_main () at /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#33 0x0000555555691a6f in GUI::GUIFactory::run() ()
#34 0x00005555556ca877 in Main::run() ()
#35 0x00005555556cab3d in main ()
Hoglet commented 6 years ago

Sorry for slow response.

What operating system and version?

Hoglet commented 5 years ago

This is probably triggered by a change in the window manager. If the window manager does not return the same number of workspace/desktop names as is actual existing then TimeIT crashes.

I have confirmed this behaviour in Gnome-shell. This probably means that the Mutter window manager also causes this problem.