gnucash maint: [Transaction.c] don't set TxnType kvp if it is the same as before
Christopher Lam
clam at code.gnucash.org
Fri Jul 8 06:16:19 EDT 2022
Updated via https://github.com/Gnucash/gnucash/commit/aa43c198 (commit)
from https://github.com/Gnucash/gnucash/commit/9f6d495c (commit)
commit aa43c198c642adb6ba936ba97a5632ac0c430edd
Author: Christopher Lam <christopher.lck at gmail.com>
Date: Fri Jul 8 18:14:39 2022 +0800
[Transaction.c] don't set TxnType kvp if it is the same as before
will avoid dirtying the transaction.
diff --git a/libgnucash/engine/Transaction.c b/libgnucash/engine/Transaction.c
index 489e883b9..c4c933209 100644
--- a/libgnucash/engine/Transaction.c
+++ b/libgnucash/engine/Transaction.c
@@ -2112,6 +2112,12 @@ xaccTransSetTxnType (Transaction *trans, char type)
GValue v = G_VALUE_INIT;
g_return_if_fail(trans);
g_value_init (&v, G_TYPE_STRING);
+ qof_instance_get_kvp (QOF_INSTANCE (trans), &v, 1, TRANS_TXN_TYPE_KVP);
+ if (!g_strcmp0 (s, g_value_get_string (&v)))
+ {
+ g_value_unset (&v);
+ return;
+ }
g_value_set_string (&v, s);
xaccTransBeginEdit(trans);
qof_instance_set_kvp (QOF_INSTANCE (trans), &v, 1, TRANS_TXN_TYPE_KVP);
Summary of changes:
libgnucash/engine/Transaction.c | 6 ++++++
1 file changed, 6 insertions(+)
More information about the gnucash-changes
mailing list