Package: gnucash Version: 2.2.4-2 Severity: serious Justification: Might cause data loss Tags: fixed-upstream patch
Hi Thomas, on the Gnucash development Andreas Köhler [1]mentioned a bugfix he made in the Online Banking Setup Wizard: After showing the matching page twice and finishing the druid Gnucash crashes. If changes were made (for instance transactions entered or changed) prior to the crash, those changes would be lost with this crash. Hence I've chosen severity serious. 1. http://www.nabble.com/Re%3A-ofxdirectconnect-in-aqbanking3-branch-p18553758.html Fortunately the bug is fixed in upstream in the changeset [2]17346, which has been released with Gnucash 2.2.6 recently. I've extracted the changeset and attached it to this mail as a patch. You should be able to apply this patch on top of the unpackaged (thus already patched) source package of gnucash 2.2.4-2 using the command "patch -p0 < /path/to/matching_page_crash.patch". 2. http://svn.gnucash.org/trac/changeset/17346 It would be very helpful if this patch finds its way into the release of Debian Lenny. Regards Micha
Index: src/import-export/aqbanking/druid-ab-initial.c =================================================================== --- src/import-export/aqbanking/druid-ab-initial.c (Revision 17345) +++ src/import-export/aqbanking/druid-ab-initial.c (Revision 17346) @@ -88,6 +88,7 @@ GtkWidget *druid; /* account match page */ + gboolean match_page_prepared; GtkTreeView *account_view; GtkListStore *account_store; @@ -309,13 +310,18 @@ Account *root; AccCbData data; - g_return_if_fail(info && info->api); /* No way back */ gnome_druid_set_buttons_sensitive(GNOME_DRUID(info->druid), FALSE, TRUE, TRUE, TRUE); + /* Do not run this twice */ + if (info->match_page_prepared) + return; + else + info->match_page_prepared = TRUE; + /* Load aqbanking accounts */ AB_Banking_OnlineInit(info->api); @@ -738,6 +744,7 @@ info->deferred_info = NULL; info->gnc_hash = NULL; + info->match_page_prepared = FALSE; info->account_view = GTK_TREE_VIEW(glade_xml_get_widget(xml, "account_page_view")); info->account_store = gtk_list_store_new(NUM_ACCOUNT_LIST_COLS,