From 8c694e777f9cad2c28d093f468861f11ee0afda0 Mon Sep 17 00:00:00 2001 From: Victor Toso Date: Tue, 15 Feb 2022 17:13:00 +0100 Subject: tests: db: Fix leaks of OsinfoMedia * ==448366== 18,584 (256 direct, 18,328 indirect) bytes in 2 blocks are definitely lost in loss record 2,649 of 2,650 ==448366== at 0x48F34A3: g_type_create_instance (in /usr/lib64/libgobject-2.0.so.0.7000.3) ==448366== by 0x48DAD4C: ??? (in /usr/lib64/libgobject-2.0.so.0.7000.3) ==448366== by 0x48DC2C7: g_object_new_valist (in /usr/lib64/libgobject-2.0.so.0.7000.3) ==448366== by 0x48DC7FC: g_object_new (in /usr/lib64/libgobject-2.0.so.0.7000.3) ==448366== by 0x4888427: osinfo_loader_get_os (osinfo_loader.c:497) ==448366== by 0x4888427: osinfo_loader_get_os (osinfo_loader.c:492) ==448366== by 0x488A3EB: osinfo_loader_os (osinfo_loader.c:1646) ==448366== by 0x488A3EB: osinfo_loader_root (osinfo_loader.c:1886) ==448366== by 0x488A3EB: osinfo_loader_process_xml (osinfo_loader.c:1975) ==448366== by 0x488A3EB: osinfo_loader_process_file_reg_xml (osinfo_loader.c:2184) ==448366== by 0x488D18A: osinfo_loader_process_list (osinfo_loader.c:2517) ==448366== by 0x488D38F: osinfo_loader_process_path (osinfo_loader.c:2589) ==448366== by 0x40621F: test_identify_media (test-db.c:434) ==448366== by 0x4992BD5: ??? (in /usr/lib64/libglib-2.0.so.0.7000.3) ==448366== by 0x49928FA: ??? (in /usr/lib64/libglib-2.0.so.0.7000.3) ==448366== by 0x49930A9: g_test_run_suite (in /usr/lib64/libglib-2.0.so.0.7000.3) ==448366== ==448366== 44,969 (896 direct, 44,073 indirect) bytes in 7 blocks are definitely lost in loss record 2,650 of 2,650 ==448366== at 0x48F34A3: g_type_create_instance (in /usr/lib64/libgobject-2.0.so.0.7000.3) ==448366== by 0x48DAD4C: ??? (in /usr/lib64/libgobject-2.0.so.0.7000.3) ==448366== by 0x48DC2C7: g_object_new_valist (in /usr/lib64/libgobject-2.0.so.0.7000.3) ==448366== by 0x48DC7FC: g_object_new (in /usr/lib64/libgobject-2.0.so.0.7000.3) ==448366== by 0x4888427: osinfo_loader_get_os (osinfo_loader.c:497) ==448366== by 0x4888427: osinfo_loader_get_os (osinfo_loader.c:492) ==448366== by 0x488A3EB: osinfo_loader_os (osinfo_loader.c:1646) ==448366== by 0x488A3EB: osinfo_loader_root (osinfo_loader.c:1886) ==448366== by 0x488A3EB: osinfo_loader_process_xml (osinfo_loader.c:1975) ==448366== by 0x488A3EB: osinfo_loader_process_file_reg_xml (osinfo_loader.c:2184) ==448366== by 0x488D18A: osinfo_loader_process_list (osinfo_loader.c:2517) ==448366== by 0x488D38F: osinfo_loader_process_path (osinfo_loader.c:2589) ==448366== by 0x406B32: test_identify_all_media (test-db.c:547) ==448366== by 0x4992BD5: ??? (in /usr/lib64/libglib-2.0.so.0.7000.3) ==448366== by 0x49928FA: ??? (in /usr/lib64/libglib-2.0.so.0.7000.3) ==448366== by 0x49930A9: g_test_run_suite (in /usr/lib64/libglib-2.0.so.0.7000.3) and ==408306== 788 (48 direct, 740 indirect) bytes in 1 blocks are definitely lost in loss record 2,626 of 2,668 ==408306== at 0x48F3437: g_type_create_instance (in /usr/lib64/libgobject-2.0.so.0.7000.3) ==408306== by 0x48DAD4C: ??? (in /usr/lib64/libgobject-2.0.so.0.7000.3) ==408306== by 0x48DC2C7: g_object_new_valist (in /usr/lib64/libgobject-2.0.so.0.7000.3) ==408306== by 0x48DC7FC: g_object_new (in /usr/lib64/libgobject-2.0.so.0.7000.3) ==408306== by 0x487D918: osinfo_media_new (osinfo_media.c:704) ==408306== by 0x406B7B: test_identify_all_media (test-db.c:551) ==408306== by 0x4992BD5: ??? (in /usr/lib64/libglib-2.0.so.0.7000.3) ==408306== by 0x49928FA: ??? (in /usr/lib64/libglib-2.0.so.0.7000.3) ==408306== by 0x49930A9: g_test_run_suite (in /usr/lib64/libglib-2.0.so.0.7000.3) ==408306== by 0x49930D0: g_test_run (in /usr/lib64/libglib-2.0.so.0.7000.3) ==408306== by 0x40366E: main (test-db.c:918) and ==402464== 48 bytes in 1 blocks are definitely lost in loss record 1,587 of 2,714 ==402464== at 0x48F3437: g_type_create_instance (in /usr/lib64/libgobject-2.0.so.0.7000.3) ==402464== by 0x48DAD4C: ??? (in /usr/lib64/libgobject-2.0.so.0.7000.3) ==402464== by 0x48DC2C7: g_object_new_valist (in /usr/lib64/libgobject-2.0.so.0.7000.3) ==402464== by 0x48DC7FC: g_object_new (in /usr/lib64/libgobject-2.0.so.0.7000.3) ==402464== by 0x487D918: osinfo_media_new (osinfo_media.c:704) ==402464== by 0x406826: test_identify_media (test-db.c:519) ==402464== by 0x4992BD5: ??? (in /usr/lib64/libglib-2.0.so.0.7000.3) ==402464== by 0x49928FA: ??? (in /usr/lib64/libglib-2.0.so.0.7000.3) ==402464== by 0x49930A9: g_test_run_suite (in /usr/lib64/libglib-2.0.so.0.7000.3) ==402464== by 0x49930D0: g_test_run (in /usr/lib64/libglib-2.0.so.0.7000.3) ==402464== by 0x40366E: main (test-db.c:917) Signed-off-by: Victor Toso --- tests/test-db.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/tests/test-db.c b/tests/test-db.c index d5f48af..a4f581e 100644 --- a/tests/test-db.c +++ b/tests/test-db.c @@ -460,6 +460,7 @@ test_identify_media(void) g_assert_cmpstr(osinfo_entity_get_id(OSINFO_ENTITY(os)), ==, "http://libosinfo.org/test/db/media"); g_object_unref(scripts); g_object_unref(media); + g_clear_object(&os); media = osinfo_media_new("foo", "ppc64le"); osinfo_entity_set_param(OSINFO_ENTITY(media), @@ -522,10 +523,12 @@ test_identify_media(void) "ROLLING_VERSIONED"); g_assert_true(osinfo_db_identify_media(db, media)); os = osinfo_media_get_os(media); + g_object_unref(media); g_assert_nonnull(os); g_assert_cmpstr(osinfo_product_get_short_id(OSINFO_PRODUCT(os)), ==, "versioned"); g_object_unref(loader); + g_clear_object(&os); } @@ -575,7 +578,9 @@ test_identify_all_media(void) g_assert_nonnull(os); g_assert_cmpstr(osinfo_entity_get_id(OSINFO_ENTITY(os)), ==, "http://libosinfo.org/test/db/media"); g_object_unref(scripts); + g_clear_object(&os); + g_clear_object(&media); media = osinfo_media_new("foo", "ppc64le"); osinfo_entity_set_param(OSINFO_ENTITY(media), OSINFO_MEDIA_PROP_VOLUME_ID, @@ -636,6 +641,7 @@ test_identify_all_media(void) g_assert_false(seenRolling); seenRolling = TRUE; } + g_clear_object(&os); } g_assert(seenVersioned && seenRolling); g_object_unref(medialist); @@ -673,6 +679,7 @@ test_identify_all_media(void) g_assert_false(seenDupe4); seenDupe4 = TRUE; } + g_clear_object(&os); } g_assert(seenDupe1 && seenDupe2 && !seenDupe3 && seenDupe4); @@ -711,6 +718,7 @@ test_identify_all_media(void) g_assert_false(seenDupe4); seenDupe4 = TRUE; } + g_clear_object(&os); } g_assert(seenDupe1 && seenDupe2 && seenDupe3 && seenDupe4); -- cgit v1.2.1