I sure hope it's deleting all of the splits in a transaction. Be sure to mention that in your bug report.
Regards, John Ralls > On Jan 21, 2018, at 1:03 PM, Fabio Coatti <fabio.coa...@gmail.com> wrote: > > Sry, the dialog option I was referring to is the one that appears when you > delete a transaction, asking if you want to delete, delete and don't be asked > again or deleted and don't asked again in the current session. Anyway, this > proved to be wrong, I simply deleted transactions that were ok (no bug > triggering) for three times in a row and when I selected "don't remind me > again" I was working on a "bad" transaction. A unlucky pick. > I'm going to open a bug, thanks for the hint. Maybe this situation could be > caused by having deleted one account with all his transactions. I was > assuming that both splits were going to be deleted but I get that my > assumption was wrong. > > Il giorno dom 21 gen 2018 alle ore 21:37 John Ralls <jra...@ceridwen.us> ha > scritto: > Don't remind me of *what*? > > Anyway, the problem is obvious from the first tow stack frames: You've > deleted the transaction out from under one of the business pages (can't tell > from the backtrace which one and it probably doesn't matter) and so there's > no primary transaction. xaccTransCountSplits doesn't protect itself from > being called with a null transaction (it should) and > gnc_plugin_business_update_menus doesn't check that it got a transaction > before calling it (it should), so boom. > > Please file a bug report so that we don't forget. Thanks. > > Regards, > John Ralls > > > On Jan 21, 2018, at 12:16 PM, Fabio Coatti <fabio.coa...@gmail.com> wrote: > > > > Another bit of information: I can see this issue when I tick "don't remind > > me again in this session" option. If I leave it unticked, the crash does > > not happen. > > > > Il giorno dom 21 gen 2018 alle ore 20:16 Fabio Coatti < > > fabio.coa...@gmail.com> ha scritto: > > > >> Hi All, > >> I'm testing out gnucash 2.7.3 (nice step from 2.6.x, BTW, thanks) and I > >> very often get a SIGSEGV when deleting transaction, albeit not all the > >> times. > >> I tried to get a core and a backtrack, but probably I still have too many > >> optimizations active. > >> In any case, this is what I got; if you want a specific > >> testing/compilation option just let me know, I'll try to do what I can. > >> > >> Program terminated with signal SIGSEGV, Segmentation fault. > >> #0 xaccTransCountSplits (trans=trans@entry=0x0) at Transaction.c:2318 > >> 2318 FOR_EACH_SPLIT(trans, i++); > >> [Current thread is 1 (LWP 15888)] > >> > >> (gdb) bt > >> #0 xaccTransCountSplits (trans=trans@entry=0x0) at Transaction.c:2318 > >> #1 0x00007ea1fbf46473 in gnc_plugin_business_update_menus > >> (plugin_page=<optimized out>) at gnc-plugin-business.c:926 > >> #2 0x00007ea1fbf466bc in gnc_plugin_business_main_window_page_changed > >> (window=<optimized out>, page=0x57bb548b19e0, user_data=<optimized out>) at > >> gnc-plugin-business.c:946 > >> #3 0x00007ea1f9f71555 in g_closure_invoke () from > >> /usr/lib64/libgobject-2.0.so.0 > >> #4 0x00007ea1f9f5de43 in ?? () from /usr/lib64/libgobject-2.0.so.0 > >> #5 0x00007ea1f9f61f55 in g_signal_emit_valist () from > >> /usr/lib64/libgobject-2.0.so.0 > >> #6 0x00007ea1f9f62eb8 in g_signal_emit_by_name () from > >> /usr/lib64/libgobject-2.0.so.0 > >> #7 0x00007ea1fbc28656 in gnc_main_window_generate_title > >> (window=window@entry=0x57bb507d43a0) at gnc-main-window.c:1536 > >> #8 0x00007ea1fbc287ae in gnc_main_window_update_title > >> (window=0x57bb507d43a0) at gnc-main-window.c:1558 > >> #9 0x00007ea1f9c93add in g_list_foreach () from > >> /usr/lib64/libglib-2.0.so.0 > >> #10 0x00007ea1fbc277c0 in gnc_main_window_update_all_titles () at > >> gnc-main-window.c:1566 > >> #11 gnc_main_window_book_dirty_cb (book=0x57bb525f0c80, dirty=1, > >> user_data=<optimized out>) at gnc-main-window.c:1576 > >> #12 0x00007ea1fb6dd752 in qof_commit_edit_part2 (inst=0x57bb54071a70, > >> on_error=on_error@entry=0x7ea1fb60c0a0 <commit_err>, > >> on_done=on_done@entry=0x0, > >> on_free=on_free@entry=0x7ea1fb60bed0 <xaccFreeSplit>) at > >> qofinstance.cpp:1011 > >> #13 0x00007ea1fb60e13a in xaccSplitCommitEdit (s=0x57bb54071a70) at > >> Split.c:1004 > >> #14 0x00007ea1fb614645 in do_destroy (trans=0x57bb52c4b700) at > >> Transaction.c:1531 > >> #15 0x00007ea1fb6dd6ef in qof_commit_edit_part2 (inst=0x57bb52c4b700, > >> on_error=on_error@entry=0x7ea1fb614c10 <trans_on_error>, > >> on_done=on_done@entry=0x7ea1fb611b60 <trans_cleanup_commit>, > >> on_free=on_free@entry=0x7ea1fb6145a0 <do_destroy>) > >> at qofinstance.cpp:1048 > >> #16 0x00007ea1fb613e9a in xaccTransCommitEdit (trans=0x57bb52c4b700) at > >> Transaction.c:1692 > >> #17 0x00007ea1f942ae87 in gnc_split_register_delete_current_trans > >> (reg=<optimized out>) at split-register.c:1140 > >> #18 0x00007ea1fbf58922 in gnc_plugin_page_register_cmd_delete_transaction > >> (action=0x57bb54b03630, plugin_page=0x57bb548b19e0) at > >> gnc-plugin-page-register.c:3575 > >> #19 0x00007ea1f9f71555 in g_closure_invoke () from > >> /usr/lib64/libgobject-2.0.so.0 > >> #20 0x00007ea1f9f5de43 in ?? () from /usr/lib64/libgobject-2.0.so.0 > >> #21 0x00007ea1f9f61f55 in g_signal_emit_valist () from > >> /usr/lib64/libgobject-2.0.so.0 > >> #22 0x00007ea1f9f631a7 in g_signal_emit () from > >> /usr/lib64/libgobject-2.0.so.0 > >> #23 0x00007ea1fa8a905a in ?? () from /usr/lib64/libgtk-3.so.0 > >> #24 0x00007ea1fa662789 in ?? () from /usr/lib64/libgtk-3.so.0 > >> #25 0x00007ea1f9f624bd in g_signal_emit_valist () from > >> /usr/lib64/libgobject-2.0.so.0 > >> #26 0x00007ea1f9f631a7 in g_signal_emit () from > >> /usr/lib64/libgobject-2.0.so.0 > >> #27 0x00007ea1fa7f8d75 in ?? () from /usr/lib64/libgtk-3.so.0 > >> #28 0x00007ea1fa7f8e45 in ?? () from /usr/lib64/libgtk-3.so.0 > >> #29 0x00007ea1f9f71555 in g_closure_invoke () from > >> /usr/lib64/libgobject-2.0.so.0 > >> #30 0x00007ea1f9f5df1b in ?? () from /usr/lib64/libgobject-2.0.so.0 > >> #31 0x00007ea1f9f61f55 in g_signal_emit_valist () from > >> /usr/lib64/libgobject-2.0.so.0 > >> #32 0x00007ea1f9f631a7 in g_signal_emit () from > >> /usr/lib64/libgobject-2.0.so.0 > >> #33 0x00007ea1fa7f7360 in ?? () from /usr/lib64/libgtk-3.so.0 > >> #34 0x00007ea1f5e670e2 in ffi_call_unix64 () from /usr/lib64/libffi.so.6 > >> #35 0x00007ea1f5e63e8c in ffi_call () from /usr/lib64/libffi.so.6 > >> #36 0x00007ea1f9f7a35d in g_cclosure_marshal_generic_va () from > >> /usr/lib64/libgobject-2.0.so.0 > >> #37 0x00007ea1f9f624bd in g_signal_emit_valist () from > >> /usr/lib64/libgobject-2.0.so.0 > >> #38 0x00007ea1f9f631a7 in g_signal_emit () from > >> /usr/lib64/libgobject-2.0.so.0 > >> #39 0x00007ea1fa7a42b1 in ?? () from /usr/lib64/libgtk-3.so.0 > >> #40 0x00007ea1f9f7a019 in g_cclosure_marshal_VOID__BOXEDv () from > >> /usr/lib64/libgobject-2.0.so.0 > >> #41 0x00007ea1f9f624bd in g_signal_emit_valist () from > >> /usr/lib64/libgobject-2.0.so.0 > >> #42 0x00007ea1f9f631a7 in g_signal_emit () from > >> /usr/lib64/libgobject-2.0.so.0 > >> #43 0x00007ea1fa79ae4e in ?? () from /usr/lib64/libgtk-3.so.0 > >> #44 0x00007ea1fa7a5d8b in ?? () from /usr/lib64/libgtk-3.so.0 > >> #45 0x00007ea1fa7a398a in ?? () from /usr/lib64/libgtk-3.so.0 > >> #46 0x00007ea1fa834e11 in gtk_event_controller_handle_event () from > >> /usr/lib64/libgtk-3.so.0 > >> #47 0x00007ea1fa5cdbab in ?? () from /usr/lib64/libgtk-3.so.0 > >> #48 0x00007ea1fa717068 in ?? () from /usr/lib64/libgtk-3.so.0 > >> #49 0x00007ea1f9f624bd in g_signal_emit_valist () from > >> /usr/lib64/libgobject-2.0.so.0 > >> #50 0x00007ea1f9f631a7 in g_signal_emit () from > >> /usr/lib64/libgobject-2.0.so.0 > >> #51 0x00007ea1fa5cdd2c in ?? () from /usr/lib64/libgtk-3.so.0 > >> #52 0x00007ea1fa71f57e in ?? () from /usr/lib64/libgtk-3.so.0 > >> #53 0x00007ea1fa722628 in gtk_main_do_event () from > >> /usr/lib64/libgtk-3.so.0 > >> #54 0x00007ea1f82b1933 in ?? () from /usr/lib64/libgdk-3.so.0 > >> #55 0x00007ea1f82cf0c2 in ?? () from /usr/lib64/libgdk-3.so.0 > >> #56 0x00007ea1f9c987ff in g_main_context_dispatch () from > >> /usr/lib64/libglib-2.0.so.0 > >> #57 0x00007ea1f9c9a418 in ?? () from /usr/lib64/libglib-2.0.so.0 > >> #58 0x00007ea1f9c9b382 in g_main_loop_run () from > >> /usr/lib64/libglib-2.0.so.0 > >> #59 0x00007ea1fa71966d in gtk_main () from /usr/lib64/libgtk-3.so.0 > >> #60 0x00007ea1fbc2438d in gnc_ui_start_event_loop () at > >> gnc-gnome-utils.c:652 > >> #61 0x000057bb4ea7dab8 in inner_main (closure=<optimized out>, > >> argc=<optimized out>, argv=<optimized out>) at gnucash-bin.c:675 > >> #62 0x00007ea1faed072c in ?? () from /usr/lib64/libguile-2.2.so.1 > >> #63 0x00007ea1fae6871a in ?? () from /usr/lib64/libguile-2.2.so.1 > >> #64 0x00007ea1fae63a85 in ?? () from /usr/lib64/libguile-2.2.so.1 > >> #65 0x00007ea1faf032ca in scm_call_n () from /usr/lib64/libguile-2.2.so.1 > >> #66 0x00007ea1fae663ba in ?? () from /usr/lib64/libguile-2.2.so.1 > >> #67 0x00007ea1fae71540 in ?? () from /usr/lib64/libguile-2.2.so.1 > >> #68 0x00007ea1fae71855 in scm_c_with_continuation_barrier () from > >> /usr/lib64/libguile-2.2.so.1 > >> #69 0x00007ea1fae671fc in ?? () from /usr/lib64/libguile-2.2.so.1 > >> #70 0x00007ea1f607b415 in GC_call_with_stack_base () from > >> /usr/lib64/libgc.so.2 > >> #71 0x00007ea1fae5e4d8 in scm_with_guile () from > >> /usr/lib64/libguile-2.2.so.1 > >> #72 0x00007ea1faeced25 in scm_boot_guile () from > >> /usr/lib64/libguile-2.2.so.1 > >> #73 0x000057bb4ea7d3a0 in main (argc=<optimized out>, argv=<optimized > >> out>) at gnucash-bin.c:819 > >> > >> > >> (compiler: gcc 7.2.0) > >> > >> > >> > >> -- > >> -- > >> Fabio > >> > > > > > > -- > > -- > > Fabio > > _______________________________________________ > > gnucash-devel mailing list > > gnucash-devel@gnucash.org > > https://lists.gnucash.org/mailman/listinfo/gnucash-devel > > > > -- > -- > Fabio _______________________________________________ gnucash-devel mailing list gnucash-devel@gnucash.org https://lists.gnucash.org/mailman/listinfo/gnucash-devel