From 3176c65798d5c37c8073e4c2bb3079fd4edadceb Mon Sep 17 00:00:00 2001 From: Bartosz Golaszewski Date: Tue, 31 Jan 2023 15:53:27 +0100 Subject: [PATCH] tests: fix a GVariant referencing bug g_variant_new() returns a floating reference that must be converted to a full reference before returning or else we may get weird reference counting errors. Signed-off-by: Bartosz Golaszewski --- tests/gpiod-test-helpers.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/gpiod-test-helpers.c b/tests/gpiod-test-helpers.c index 24a6ee4..4801b15 100644 --- a/tests/gpiod-test-helpers.c +++ b/tests/gpiod-test-helpers.c @@ -24,7 +24,7 @@ gpiod_test_package_line_names(const struct gpiod_test_line_name *names) g_variant_builder_add(builder, "(us)", name->offset, name->name); - ret = g_variant_new("a(us)", builder); + ret = g_variant_ref_sink(g_variant_new("a(us)", builder)); g_variant_builder_unref(builder); return ret; @@ -42,7 +42,7 @@ GVariant *gpiod_test_package_hogs(const struct gpiod_test_hog *hogs) g_variant_builder_add(builder, "(usi)", hog->offset, hog->name, hog->direction); - ret = g_variant_new("a(usi)", builder); + ret = g_variant_ref_sink(g_variant_new("a(usi)", builder)); g_variant_builder_unref(builder); return ret; -- 2.30.2