r21739 - gnucash/trunk/src - Revert "Replace no-op function force_account_dirty with qof_book_mark_dirty"

Geert Janssens gjanssens at code.gnucash.org
Sun Dec 18 13:12:52 EST 2011


Author: gjanssens
Date: 2011-12-18 13:12:52 -0500 (Sun, 18 Dec 2011)
New Revision: 21739
Trac: http://svn.gnucash.org/trac/changeset/21739

Modified:
   gnucash/trunk/src/import-export/aqbanking/gnc-ab-kvp.c
   gnucash/trunk/src/report/standard-reports/standard-reports.scm
Log:
Revert "Replace no-op function force_account_dirty with qof_book_mark_dirty"
This commit had some unintended changes.

This reverts commit 6b6eba2d7e56a4359ca646abb2b0c6c965712ce0.

Modified: gnucash/trunk/src/import-export/aqbanking/gnc-ab-kvp.c
===================================================================
--- gnucash/trunk/src/import-export/aqbanking/gnc-ab-kvp.c	2011-12-18 18:06:08 UTC (rev 21738)
+++ gnucash/trunk/src/import-export/aqbanking/gnc-ab-kvp.c	2011-12-18 18:12:52 UTC (rev 21739)
@@ -42,6 +42,7 @@
 /* This static indicates the debugging module that this .o belongs to.  */
 static QofLogModule log_module = G_LOG_DOMAIN;
 
+static void force_account_dirty(Account *acct);
 static kvp_frame *gnc_ab_get_account_kvp(const Account *a, gboolean create);
 static kvp_frame *gnc_ab_get_book_kvp(QofBook *b, gboolean create);
 
@@ -60,7 +61,7 @@
     kvp_value *value = kvp_value_new_string(id);
     xaccAccountBeginEdit(a);
     kvp_frame_set_slot_nc(frame, AB_ACCOUNT_ID, value);
-    qof_book_mark_dirty(gnc_get_current_book());
+    force_account_dirty(a);
     xaccAccountCommitEdit(a);
 }
 
@@ -79,7 +80,7 @@
     kvp_value *value = kvp_value_new_string(code);
     xaccAccountBeginEdit(a);
     kvp_frame_set_slot_nc(frame, AB_BANK_CODE, value);
-    qof_book_mark_dirty(gnc_get_current_book());
+    force_account_dirty(a);
     xaccAccountCommitEdit(a);
 }
 
@@ -98,7 +99,7 @@
     kvp_value *value = kvp_value_new_gint64(uid);
     xaccAccountBeginEdit(a);
     kvp_frame_set_slot_nc(frame, AB_ACCOUNT_UID, value);
-    qof_book_mark_dirty(gnc_get_current_book());
+    force_account_dirty(a);
     xaccAccountCommitEdit(a);
 }
 
@@ -117,7 +118,7 @@
     kvp_value *value = kvp_value_new_timespec(time);
     xaccAccountBeginEdit(a);
     kvp_frame_set_slot_nc(frame, AB_TRANS_RETRIEVAL, value);
-    qof_book_mark_dirty(gnc_get_current_book());
+    force_account_dirty(a);
     xaccAccountCommitEdit(a);
 }
 
@@ -140,6 +141,20 @@
     qof_book_commit_edit(b);
 }
 
+static void
+force_account_dirty(Account *acct)
+{
+    gchar *name = g_strdup(xaccAccountGetName(acct));
+    QofBook *book = gnc_get_current_book ();
+    /* This is necessary because modifying the KvpFrames doesn't mark
+     * accounts dirty, which means the changes wont be propagated to the
+     * backend.
+     */
+    qof_book_mark_dirty(book);
+    xaccAccountSetName(acct, name);
+    g_free(name);
+}
+
 static kvp_frame *
 gnc_ab_get_account_kvp(const Account *a, gboolean create)
 {

Modified: gnucash/trunk/src/report/standard-reports/standard-reports.scm
===================================================================
--- gnucash/trunk/src/report/standard-reports/standard-reports.scm	2011-12-18 18:06:08 UTC (rev 21738)
+++ gnucash/trunk/src/report/standard-reports/standard-reports.scm	2011-12-18 18:12:52 UTC (rev 21739)
@@ -118,7 +118,6 @@
     )
 )
 
-(gnc:debug "stdrpt-dir=" (gnc-path-get-stdreportsdir))
 (gnc:debug "dir-files=" (directory-files (gnc-path-get-stdreportsdir)))
 (gnc:debug "processed=" (process-file-list (directory-files (gnc-path-get-stdreportsdir))))
 (gnc:debug "report-list=" (get-report-list))



More information about the gnucash-changes mailing list