diff options
author | Victor Toso <victortoso@redhat.com> | 2022-02-15 13:24:00 +0100 |
---|---|---|
committer | Victor Toso <victortoso@redhat.com> | 2022-02-16 09:53:51 +0100 |
commit | 739446e925d527775920eb57880fd5d653c3ff41 (patch) | |
tree | b77debecad18912f587159667ef216562b10322e | |
parent | 5ac8ca8b507ad1111bdfd99a8fd884fdfe2048a3 (diff) | |
download | libosinfo-739446e925d527775920eb57880fd5d653c3ff41.tar.gz |
tests: os: Fix some memory leaks
* OsinfoLoader
==413574== 2,512 (40 direct, 2,472 indirect) bytes in 1 blocks are definitely lost in loss record 2,489 of 2,495
==413574== at 0x48F3437: g_type_create_instance (in /usr/lib64/libgobject-2.0.so.0.7000.3)
==413574== by 0x48DAD4C: ??? (in /usr/lib64/libgobject-2.0.so.0.7000.3)
==413574== by 0x48DBD1C: g_object_new_with_properties (in /usr/lib64/libgobject-2.0.so.0.7000.3)
==413574== by 0x48DC820: g_object_new (in /usr/lib64/libgobject-2.0.so.0.7000.3)
==413574== by 0x407270: test_firmwares_complete_list_inheritance (test-os.c:897)
==413574== by 0x4992BD5: ??? (in /usr/lib64/libglib-2.0.so.0.7000.3)
==413574== by 0x49928FA: ??? (in /usr/lib64/libglib-2.0.so.0.7000.3)
==413574== by 0x49928FA: ??? (in /usr/lib64/libglib-2.0.so.0.7000.3)
==413574== by 0x49928FA: ??? (in /usr/lib64/libglib-2.0.so.0.7000.3)
==413574== by 0x49930A9: g_test_run_suite (in /usr/lib64/libglib-2.0.so.0.7000.3)
==413574== by 0x49930D0: g_test_run (in /usr/lib64/libglib-2.0.so.0.7000.3)
==413574== by 0x403769: main (test-os.c:1062)
and
==414148== 2,480 (40 direct, 2,440 indirect) bytes in 1 blocks are definitely lost in loss record 2,477 of 2,484
==414148== at 0x48F3437: g_type_create_instance (in /usr/lib64/libgobject-2.0.so.0.7000.3)
==414148== by 0x48DAD4C: ??? (in /usr/lib64/libgobject-2.0.so.0.7000.3)
==414148== by 0x48DBD1C: g_object_new_with_properties (in /usr/lib64/libgobject-2.0.so.0.7000.3)
==414148== by 0x48DC820: g_object_new (in /usr/lib64/libgobject-2.0.so.0.7000.3)
==414148== by 0x40531D: test_firmwares_complete_list (test-os.c:855)
==414148== by 0x4992BD5: ??? (in /usr/lib64/libglib-2.0.so.0.7000.3)
==414148== by 0x49928FA: ??? (in /usr/lib64/libglib-2.0.so.0.7000.3)
==414148== by 0x49928FA: ??? (in /usr/lib64/libglib-2.0.so.0.7000.3)
==414148== by 0x49930A9: g_test_run_suite (in /usr/lib64/libglib-2.0.so.0.7000.3)
==414148== by 0x49930D0: g_test_run (in /usr/lib64/libglib-2.0.so.0.7000.3)
==414148== by 0x403769: main (test-os.c:1061)
* OsinfoTreeList
==414820== 1,793 (48 direct, 1,745 indirect) bytes in 1 blocks are definitely lost in loss record 2,424 of 2,438
==414820== at 0x48F3437: g_type_create_instance (in /usr/lib64/libgobject-2.0.so.0.7000.3)
==414820== by 0x48DAD4C: ??? (in /usr/lib64/libgobject-2.0.so.0.7000.3)
==414820== by 0x48DC2C7: g_object_new_valist (in /usr/lib64/libgobject-2.0.so.0.7000.3)
==414820== by 0x48DC7FC: g_object_new (in /usr/lib64/libgobject-2.0.so.0.7000.3)
==414820== by 0x4879165: osinfo_os_get_tree_list (osinfo_os.c:698)
==414820== by 0x404D3C: test_loader (test-os.c:124)
==414820== by 0x4992BD5: ??? (in /usr/lib64/libglib-2.0.so.0.7000.3)
==414820== by 0x49928FA: ??? (in /usr/lib64/libglib-2.0.so.0.7000.3)
==414820== by 0x49930A9: g_test_run_suite (in /usr/lib64/libglib-2.0.so.0.7000.3)
==414820== by 0x49930D0: g_test_run (in /usr/lib64/libglib-2.0.so.0.7000.3)
==414820== by 0x403769: main (test-os.c:1060)
* OsinfoFirmwareList
==414989== 1,537 (48 direct, 1,489 indirect) bytes in 1 blocks are definitely lost in loss record 2,391 of 2,405
==414989== at 0x48F3437: g_type_create_instance (in /usr/lib64/libgobject-2.0.so.0.7000.3)
==414989== by 0x48DAD4C: ??? (in /usr/lib64/libgobject-2.0.so.0.7000.3)
==414989== by 0x48DC2C7: g_object_new_valist (in /usr/lib64/libgobject-2.0.so.0.7000.3)
==414989== by 0x48DC7FC: g_object_new (in /usr/lib64/libgobject-2.0.so.0.7000.3)
==414989== by 0x48763CA: osinfo_list_new_copy (osinfo_list.c:458)
==414989== by 0x4877257: get_all_firmwares_cb (osinfo_os.c:1536)
==414989== by 0x487348E: osinfo_product_foreach_related (osinfo_product.c:436)
==414989== by 0x4873502: osinfo_product_foreach_related (osinfo_product.c:467)
==414989== by 0x487A6A4: osinfo_os_get_complete_firmware_list (osinfo_os.c:1623)
==414989== by 0x40744D: test_firmwares_complete_list_inheritance (test-os.c:942)
==414989== by 0x4992BD5: ??? (in /usr/lib64/libglib-2.0.so.0.7000.3)
==414989== by 0x49928FA: ??? (in /usr/lib64/libglib-2.0.so.0.7000.3)
* OsinfoDeviceDriverList
==415264== 512 (48 direct, 464 indirect) bytes in 1 blocks are definitely lost in loss record 2,355 of 2,384
==415264== at 0x48F3437: g_type_create_instance (in /usr/lib64/libgobject-2.0.so.0.7000.3)
==415264== by 0x48DAD4C: ??? (in /usr/lib64/libgobject-2.0.so.0.7000.3)
==415264== by 0x48DC2C7: g_object_new_valist (in /usr/lib64/libgobject-2.0.so.0.7000.3)
==415264== by 0x48DC7FC: g_object_new (in /usr/lib64/libgobject-2.0.so.0.7000.3)
==415264== by 0x487A126: osinfo_os_get_device_drivers_prioritized (osinfo_os.c:1251)
==415264== by 0x405830: test_device_driver_priority_helper (test-os.c:235)
==415264== by 0x4059BD: test_device_driver_prioritized_priority (test-os.c:262)
==415264== by 0x4992BD5: ??? (in /usr/lib64/libglib-2.0.so.0.7000.3)
==415264== by 0x49928FA: ??? (in /usr/lib64/libglib-2.0.so.0.7000.3)
==415264== by 0x49928FA: ??? (in /usr/lib64/libglib-2.0.so.0.7000.3)
==415264== by 0x49930A9: g_test_run_suite (in /usr/lib64/libglib-2.0.so.0.7000.3)
==415264== by 0x49930D0: g_test_run (in /usr/lib64/libglib-2.0.so.0.7000.3)
Signed-off-by: Victor Toso <victortoso@redhat.com>
-rw-r--r-- | tests/test-os.c | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/tests/test-os.c b/tests/test-os.c index be3ea20..7657545 100644 --- a/tests/test-os.c +++ b/tests/test-os.c @@ -142,6 +142,7 @@ test_loader(void) } } + g_object_unref(treelist); g_object_unref(loader); } @@ -216,7 +217,8 @@ test_device_driver(void) static void test_device_driver_priority_helper(gint64* expected_priorities, OsinfoDeviceDriverList *(*get_device_drivers_func)(OsinfoOs *), - gint expected_ddlist_length) + gint expected_ddlist_length, + gboolean free_ddlist) { OsinfoLoader *loader = osinfo_loader_new(); OsinfoDb *db; @@ -238,6 +240,9 @@ test_device_driver_priority_helper(gint64* expected_priorities, g_assert_cmpint(osinfo_device_driver_get_priority(dd), ==, expected_priorities[i]); } + if (free_ddlist) + g_object_unref(ddlist); + g_object_unref(db); } @@ -249,7 +254,8 @@ test_device_driver_priority(void) test_device_driver_priority_helper(expected_priorities, osinfo_os_get_device_drivers, - 2); + 2, + FALSE); } @@ -260,7 +266,8 @@ test_device_driver_prioritized_priority(void) test_device_driver_priority_helper(expected_priorities, osinfo_os_get_device_drivers_prioritized, - 1); + 1, + TRUE); } @@ -858,7 +865,6 @@ test_firmwares_complete_list(void) OsinfoFirmwareList *firmwarelist; GError *error = NULL; - loader = osinfo_loader_new(); osinfo_loader_process_path(loader, SRCDIR "/tests/dbdata", &error); g_assert_no_error(error); db = osinfo_loader_get_db(loader); @@ -901,7 +907,6 @@ test_firmwares_complete_list_inheritance(void) OsinfoFirmwareList *firmwarelist; GError *error = NULL; - loader = osinfo_loader_new(); osinfo_loader_process_path(loader, SRCDIR "/tests/dbdata", &error); g_assert_no_error(error); db = osinfo_loader_get_db(loader); @@ -952,6 +957,7 @@ test_firmwares_complete_list_inheritance(void) g_assert_cmpstr(osinfo_firmware_get_firmware_type(firmware), ==, "bios"); g_assert_cmpstr(osinfo_firmware_get_architecture(firmware), ==, "x86_64"); g_assert_true(osinfo_firmware_is_supported(firmware)); + g_clear_object(&firmwarelist); /** * inherit3: |