gnucash maint: Bug 796981 - Gnucash crashes with critical error when selecting another file
John Ralls
jralls at code.gnucash.org
Sat Dec 22 15:06:18 EST 2018
Updated via https://github.com/Gnucash/gnucash/commit/4585f60d (commit)
from https://github.com/Gnucash/gnucash/commit/294c932e (commit)
commit 4585f60dd94593c76fde7769d54efddaddf3197d
Author: John Ralls <jralls at ceridwen.us>
Date: Sat Dec 22 11:36:58 2018 -0800
Bug 796981 - Gnucash crashes with critical error when selecting another file
The problem is that if the currently open file has a report tab with
another tab to its right and selected then when the selected tab is
closed by the shutdown code Gtk sends a "realize" signal to the report
page. That sets an idle event to gnc_plugin_page_report_load_uri, but the
shutdown code proceeds to destroy the page and GnuCash has loaded the new
session before the idle event fires. By that time there's no page so
GNC_PLUGIN_PAGE_REPORT_GET_PRIVATE naturally returns NULL and the first
dereference crashes.
I couldn't find an easy way to avoid queuing the idle so I opted to protect
the function from the NULL priv.
Summary of changes:
gnucash/report/report-gnome/gnc-plugin-page-report.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
More information about the gnucash-patches
mailing list