gnucash stable: Multiple changes pushed

Christopher Lam clam at code.gnucash.org
Fri May 22 09:16:32 EDT 2026


Updated	 via  https://github.com/Gnucash/gnucash/commit/43b6b92e (commit)
	 via  https://github.com/Gnucash/gnucash/commit/bbb80105 (commit)
	 via  https://github.com/Gnucash/gnucash/commit/55856c63 (commit)
	from  https://github.com/Gnucash/gnucash/commit/4490130e (commit)



commit 43b6b92ee24282f98e4509584775fa25b2a4930c
Author: Christopher Lam <christopher.lck at gmail.com>
Date:   Fri May 22 07:45:01 2026 +0800

    [gnc-log-replay.cpp] fix incorrect guid dump

diff --git a/gnucash/import-export/log-replay/gnc-log-replay.cpp b/gnucash/import-export/log-replay/gnc-log-replay.cpp
index 54a1341f92..efc199d8a1 100644
--- a/gnucash/import-export/log-replay/gnc-log-replay.cpp
+++ b/gnucash/import-export/log-replay/gnc-log-replay.cpp
@@ -304,7 +304,7 @@ static void dump_split_record(split_record record)
     }
     if (record.acc_guid_present)
     {
-        guid_to_string_buff(&record.trans_guid, string_buf);
+        guid_to_string_buff(&record.acc_guid, string_buf);
         DEBUG("Account GncGUID: %s", string_buf);
     }
     if (record.acc_name_present)

commit bbb80105ff5c6d6be4b4d1f2cf9422b94ac8d602
Author: Christopher Lam <christopher.lck at gmail.com>
Date:   Fri May 22 07:45:18 2026 +0800

    [gnc-aqbanking-templates.cpp] fix incorrect setter, free GList*

diff --git a/libgnucash/engine/gnc-aqbanking-templates.cpp b/libgnucash/engine/gnc-aqbanking-templates.cpp
index 27cb5cdf1e..2ddb7e66a7 100644
--- a/libgnucash/engine/gnc-aqbanking-templates.cpp
+++ b/libgnucash/engine/gnc-aqbanking-templates.cpp
@@ -88,7 +88,7 @@ public:
     }
     void set_amount (GncRational amount) { m_amount = amount; }
     void set_purpose (const char* purpose) { m_purpose = purpose; }
-    void set_purpose_continuation (const char* name) { m_name = name; }
+    void set_purpose_continuation (const char* cont) { m_purpose_continuation = cont; }
 private:
     std::string m_name;
     std::string m_recipient_name;
@@ -166,9 +166,9 @@ gnc_ab_trans_templ_free (GncABTransTempl *t)
 void
 gnc_ab_trans_templ_list_free (GList *l)
 {
-    for(GList *node = l; node != NULL; node = g_list_next(node))
-        delete static_cast<_GncABTransTempl*>(node->data);
+    g_list_free_full (l, (GDestroyNotify)gnc_ab_trans_templ_free);
 }
+
 static void*
 copy_list_value(const void* pvalue, void* pdata)
 {

commit 55856c63dd55e44c0c477266bf6954f0e6d571e5
Author: Christopher Lam <christopher.lck at gmail.com>
Date:   Fri May 22 21:13:54 2026 +0800

    [gnc-budget.cpp] null check arguments *before* accessing them

diff --git a/libgnucash/engine/gnc-budget.cpp b/libgnucash/engine/gnc-budget.cpp
index ec8638df0c..7317833842 100644
--- a/libgnucash/engine/gnc-budget.cpp
+++ b/libgnucash/engine/gnc-budget.cpp
@@ -541,6 +541,9 @@ void
 gnc_budget_set_account_period_value(GncBudget *budget, const Account *account,
                                     guint period_num, gnc_numeric val)
 {
+    g_return_if_fail (budget != nullptr);
+    g_return_if_fail (account != nullptr);
+
     /* Watch out for an off-by-one error here:
      * period_num starts from 0 while num_periods starts from 1 */
     if (period_num >= GET_PRIVATE(budget)->num_periods)
@@ -549,9 +552,6 @@ gnc_budget_set_account_period_value(GncBudget *budget, const Account *account,
         return;
     }
 
-    g_return_if_fail (budget != nullptr);
-    g_return_if_fail (account != nullptr);
-
     auto& perioddata = get_perioddata (budget, account, period_num);
     auto budget_kvp { QOF_INSTANCE (budget)->kvp_data };
     auto path = make_period_data_path (account, period_num);
@@ -600,6 +600,9 @@ void
 gnc_budget_set_account_period_note(GncBudget *budget, const Account *account,
                                     guint period_num, const gchar *note)
 {
+    g_return_if_fail (budget != nullptr);
+    g_return_if_fail (account != nullptr);
+
     /* Watch out for an off-by-one error here:
      * period_num starts from 0 while num_periods starts from 1 */
     if (period_num >= GET_PRIVATE(budget)->num_periods)
@@ -608,9 +611,6 @@ gnc_budget_set_account_period_note(GncBudget *budget, const Account *account,
         return;
     }
 
-    g_return_if_fail (budget != nullptr);
-    g_return_if_fail (account != nullptr);
-
     auto& perioddata = get_perioddata (budget, account, period_num);
     auto budget_kvp { QOF_INSTANCE (budget)->kvp_data };
     auto path = make_period_note_path (account, period_num);



Summary of changes:
 gnucash/import-export/log-replay/gnc-log-replay.cpp |  2 +-
 libgnucash/engine/gnc-aqbanking-templates.cpp       |  6 +++---
 libgnucash/engine/gnc-budget.cpp                    | 12 ++++++------
 3 files changed, 10 insertions(+), 10 deletions(-)



More information about the gnucash-changes mailing list