gnucash maint: Fix use-after-free in test_xaccTransEqual.

John Ralls jralls at code.gnucash.org
Sun Jan 17 14:51:24 EST 2021


Updated	 via  https://github.com/Gnucash/gnucash/commit/ffa2f606 (commit)
	from  https://github.com/Gnucash/gnucash/commit/273841ea (commit)



commit ffa2f606e38c96a64cbebd4204f3795d5dd7c22d
Author: John Ralls <jralls at ceridwen.us>
Date:   Sun Jan 17 11:51:12 2021 -0800

    Fix use-after-free in test_xaccTransEqual.

diff --git a/libgnucash/engine/test/utest-Transaction.cpp b/libgnucash/engine/test/utest-Transaction.cpp
index ac6effbe6..69cf8ed62 100644
--- a/libgnucash/engine/test/utest-Transaction.cpp
+++ b/libgnucash/engine/test/utest-Transaction.cpp
@@ -901,7 +901,6 @@ test_xaccTransEqual (Fixture *fixture, gconstpointer pData)
     g_assert_cmpint (check->hits, ==, 10);
     g_assert_cmpint (check2->hits, ==, 1);
 
-    g_free (check->msg);
     g_free (check2->msg);
     check2->msg = g_strdup_printf (
                      "[xaccTransEqual] splits %s and %s differ", split_guid0, split_guid0);
@@ -924,6 +923,7 @@ test_xaccTransEqual (Fixture *fixture, gconstpointer pData)
         auto bal01 = gnc_numeric_to_string (split01->balance);
         auto bal10 = gnc_numeric_to_string (split10->balance);
         auto bal11 = gnc_numeric_to_string (split11->balance);
+        g_free (check->msg);
         check->msg = g_strdup_printf("[xaccSplitEqualCheckBal] balances differ: %s vs %s", bal10, bal00);
         check3->msg = g_strdup_printf("[xaccSplitEqualCheckBal] balances differ: %s vs %s", bal11, bal01);
 



Summary of changes:
 libgnucash/engine/test/utest-Transaction.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)



More information about the gnucash-changes mailing list