diff --git a/libgnucash/engine/test/utest-Account.cpp b/libgnucash/engine/test/utest-Account.cpp index 7f8585c17d..2415914168 100644 --- a/libgnucash/engine/test/utest-Account.cpp +++ b/libgnucash/engine/test/utest-Account.cpp @@ -1328,17 +1328,8 @@ set_kvp_string_path (Account *acc, std::vector const & path, const char *value) { xaccAccountBeginEdit(acc); - if (value) - { - GValue v = G_VALUE_INIT; - g_value_init (&v, G_TYPE_STRING); - g_value_set_string (&v, value); - qof_instance_set_path_kvp (QOF_INSTANCE (acc), &v, path); - g_value_unset (&v); - } - else - qof_instance_set_path_kvp (QOF_INSTANCE (acc), NULL, path); - + auto val = value ? std::make_optional(g_strdup(value)) : std::nullopt; + qof_instance_set_path_kvp (QOF_INSTANCE (acc), val, path); xaccAccountCommitEdit(acc); }