From 52bbcf72c5a8b72fdde016c9a265b3dd85d04421 Mon Sep 17 00:00:00 2001 From: Stefan Koch Date: Sun, 25 Jan 2026 13:13:38 -0500 Subject: [PATCH 1/2] Fix innocuous bug in qofinstance idata property. --- libgnucash/engine/qofinstance.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libgnucash/engine/qofinstance.cpp b/libgnucash/engine/qofinstance.cpp index 1f41dbd8f4..f005bbba72 100644 --- a/libgnucash/engine/qofinstance.cpp +++ b/libgnucash/engine/qofinstance.cpp @@ -244,7 +244,7 @@ static void qof_instance_class_init(QofInstanceClass *klass) g_object_class_install_property (object_class, - PROP_EDITLEVEL, + PROP_IDATA, g_param_spec_uint ("idata", "Object IData", "Per instance backend private data.", From e1bbb9bb7b495b63625d84432091257c57617093 Mon Sep 17 00:00:00 2001 From: Stefan Koch Date: Fri, 30 Jan 2026 09:46:00 -0500 Subject: [PATCH 2/2] =?UTF-8?q?Bug=20798873=20-=20Crash=20when=20scrubbing?= =?UTF-8?q?=20after=20"undoing=E2=80=9D=20changes?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fix double delete in qof_instance_kvp_remove_guid and remove vestigial glist support. In the KvpValue::Type::FRAME case if the guid matches, it does both: delete inst->kvp_data->set_path({path}, nullptr); delete v; Where earlier the v was set to be: auto v = inst->kvp_data->get_slot({path}); The second delete is a duplicate of the first and should be removed. --- libgnucash/engine/qofinstance.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/libgnucash/engine/qofinstance.cpp b/libgnucash/engine/qofinstance.cpp index f005bbba72..707ca743b7 100644 --- a/libgnucash/engine/qofinstance.cpp +++ b/libgnucash/engine/qofinstance.cpp @@ -1216,7 +1216,6 @@ qof_instance_kvp_remove_guid (const QofInstance *inst, const char *path, if (kvp_match_guid (v, {key}, guid)) { delete inst->kvp_data->set_path({path}, nullptr); - delete v; } break; case KvpValue::Type::GLIST: