GnuCash in the Import screen for matching bank transactions to accounts will crash when the "Assign transfer account" menu item is activated, if the menu was opened by keyboard (regardless of how the item is activated. That is: * menu opened by mouse button > mouse click on menu item > no crash * menu opened by mouse button > press Enter on menu item > no crash * menu opened by context menu key > mouse click on menu item > CRASH * menu opened by context menu key > press Enter on menu item > CRASH I have this next to useless backtrace, with a proper one to follow once I get debug symbols or whatever - unless anyone manages to diagnose this before me. ``` #0 0x00007fffeccf1269 in () at /usr/lib/x86_64-linux-gnu/gnucash/gnucash/libgncmod-generic-import.so #1 0x00007ffff6f96eb2 in g_closure_invoke () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #2 0x00007ffff6faa4d4 in () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #3 0x00007ffff6fb318f in g_signal_emit_valist () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #4 0x00007ffff6fb381f in g_signal_emit () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #5 0x00007ffff753000a in gtk_widget_activate () at /usr/lib/x86_64-linux-gnu/libgtk-3.so.0 #6 0x00007ffff7402686 in gtk_menu_shell_activate_item () at /usr/lib/x86_64-linux-gnu/libgtk-3.so.0 #7 0x00007ffff6f96eb2 in g_closure_invoke () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #8 0x00007ffff6fa9c56 in () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #9 0x00007ffff6fb229a in g_signal_emitv () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #10 0x00007ffff72d0bae in () at /usr/lib/x86_64-linux-gnu/libgtk-3.so.0 #11 0x00007ffff72d1068 in () at /usr/lib/x86_64-linux-gnu/libgtk-3.so.0 #12 0x00007ffff72d1211 in () at /usr/lib/x86_64-linux-gnu/libgtk-3.so.0 #13 0x00007ffff72d2412 in gtk_bindings_activate_event () at /usr/lib/x86_64-linux-gnu/libgtk-3.so.0 #14 0x00007ffff74017c2 in () at /usr/lib/x86_64-linux-gnu/libgtk-3.so.0 #15 0x00007ffff75814bb in () at /usr/lib/x86_64-linux-gnu/libgtk-3.so.0 #16 0x00007ffff6f970e6 in () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #17 0x00007ffff6fb2c3b in g_signal_emit_valist () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #18 0x00007ffff6fb381f in g_signal_emit () at /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #19 0x00007ffff752d222 in () at /usr/lib/x86_64-linux-gnu/libgtk-3.so.0 #20 0x00007ffff73ed5b1 in () at /usr/lib/x86_64-linux-gnu/libgtk-3.so.0 #21 0x00007ffff73ef67b in gtk_main_do_event () at /usr/lib/x86_64-linux-gnu/libgtk-3.so.0 #22 0x00007ffff6bd97d5 in () at /usr/lib/x86_64-linux-gnu/libgdk-3.so.0 #23 0x00007ffff6c0b972 in () at /usr/lib/x86_64-linux-gnu/libgdk-3.so.0 #24 0x00007ffff7ca8f1d in g_main_context_dispatch () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 #25 0x00007ffff7ca91a0 in () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 #26 0x00007ffff7ca9473 in g_main_loop_run () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 #27 0x00007ffff73ee705 in gtk_main () at /usr/lib/x86_64-linux-gnu/libgtk-3.so.0 #28 0x00007ffff7bba4d6 in gnc_ui_start_event_loop () at /usr/lib/x86_64-linux-gnu/gnucash/gnucash/libgncmod-gnome-utils.so --Type <RET> for more, q to quit, c to continue without paging-- #29 0x000055555555814a in () #30 0x00007ffff7dde8ed in () at /usr/lib/x86_64-linux-gnu/libguile-2.2.so.1 #31 0x00007ffff7dc108a in () at /usr/lib/x86_64-linux-gnu/libguile-2.2.so.1 #32 0x00007ffff7e3f82f in () at /usr/lib/x86_64-linux-gnu/libguile-2.2.so.1 #33 0x00007ffff7e451d1 in scm_call_n () at /usr/lib/x86_64-linux-gnu/libguile-2.2.so.1 #34 0x00007ffff7e33aa5 in () at /usr/lib/x86_64-linux-gnu/libguile-2.2.so.1 #35 0x00007ffff7dc1665 in () at /usr/lib/x86_64-linux-gnu/libguile-2.2.so.1 #36 0x00007ffff7dc1705 in scm_c_with_continuation_barrier () at /usr/lib/x86_64-linux-gnu/libguile-2.2.so.1 #37 0x00007ffff7e32676 in () at /usr/lib/x86_64-linux-gnu/libguile-2.2.so.1 #38 0x00007ffff656cef5 in GC_call_with_stack_base () at /usr/lib/x86_64-linux-gnu/libgc.so.1 #39 0x00007ffff7e32a18 in scm_with_guile () at /usr/lib/x86_64-linux-gnu/libguile-2.2.so.1 #40 0x00007ffff7ddea82 in scm_boot_guile () at /usr/lib/x86_64-linux-gnu/libguile-2.2.so.1 #41 0x0000555555557a21 in main () (gdb) ```
I have had a quick look at this and it is down to the call back function gnc_gen_trans_onPopupMenu_cb being defined wrong, it has a second parameter of GdkEvent but it should not have. Removing this parameter fixes the problem, will push a fix to miant later.
Thanks! :-)
My fix has been pushed to maint and will be in the next release.