Memory leaks in gsocketclient-slow test
When running the gsocketclient-slow
test under valgrind
, there are some leaks.
$ GIO_LAUNCH_DESKTOP='/opt/gnome/build/glib/gio/gio-launch-desktop' G_TEST_SRCDIR='/opt/gnome/source/glib/gio/tests' LD_PRELOAD='/opt/gnome/build/glib/gio/tests/slow-connect-preload.so' GIO_MODULE_DIR='' G_TEST_BUILDDIR='/opt/gnome/build/glib/gio/tests' valgrind --tool=memcheck --leak-check=full --leak-resolution=high --num-callers=50 --show-leak-kinds=definite --suppressions=/opt/gnome/install/share/glib-2.0/valgrind/glib.supp --trace-children=yes /opt/gnome/build/glib/gio/tests/gsocketclient-slow --tap
…
==14753==
==14753== HEAP SUMMARY:
==14753== in use at exit: 100,616 bytes in 1,173 blocks
==14753== total heap usage: 2,960 allocs, 1,787 frees, 1,095,622 bytes allocated
==14753==
==14753== 176 (40 direct, 136 indirect) bytes in 1 blocks are definitely lost in loss record 1,048 of 1,088
==14753== at 0x483AD19: realloc (vg_replace_malloc.c:836)
==14753== by 0x48F9D51: g_realloc (gmem.c:164)
==14753== by 0x4AA4DA7: g_bsearch_array_grow (gbsearcharray.h:212)
==14753== by 0x4AA4E60: g_bsearch_array_insert (gbsearcharray.h:227)
==14753== by 0x4AA52C8: handler_list_ensure (gsignal.c:420)
==14753== by 0x4AA6118: handler_insert (gsignal.c:715)
==14753== by 0x4AABF6B: g_signal_connect_data (gsignal.c:2512)
==14753== by 0x4BE0AA7: g_cancellable_source_new (gcancellable.c:762)
==14753== by 0x4C66B21: socket_source_new (gsocket.c:3951)
==14753== by 0x4C66DA1: g_socket_create_source (gsocket.c:4013)
==14753== by 0x4C751FB: add_sources (gsocketlistener.c:611)
==14753== by 0x4C75A06: g_socket_listener_accept_socket_async (gsocketlistener.c:863)
==14753== by 0x4C75C44: g_socket_listener_accept_async (gsocketlistener.c:922)
==14753== by 0x4C7D999: do_accept (gsocketservice.c:121)
==14753== by 0x4C7DEBA: g_socket_service_changed (gsocketservice.c:223)
==14753== by 0x4C76B1F: g_socket_listener_add_any_inet_port (gsocketlistener.c:1271)
==14753== by 0x4025A1: test_happy_eyeballs (gsocketclient-slow.c:48)
==14753== by 0x492DC00: test_case_run (gtestutils.c:2597)
==14753== by 0x492E13D: g_test_run_suite_internal (gtestutils.c:2685)
==14753== by 0x492E22E: g_test_run_suite_internal (gtestutils.c:2697)
==14753== by 0x492E22E: g_test_run_suite_internal (gtestutils.c:2697)
==14753== by 0x492E4F0: g_test_run_suite (gtestutils.c:2772)
==14753== by 0x492C902: g_test_run (gtestutils.c:2007)
==14753== by 0x402DA1: main (gsocketclient-slow.c:177)
==14753==
==14753== 176 (40 direct, 136 indirect) bytes in 1 blocks are definitely lost in loss record 1,049 of 1,088
==14753== at 0x483AD19: realloc (vg_replace_malloc.c:836)
==14753== by 0x48F9D51: g_realloc (gmem.c:164)
==14753== by 0x4AA4DA7: g_bsearch_array_grow (gbsearcharray.h:212)
==14753== by 0x4AA4E60: g_bsearch_array_insert (gbsearcharray.h:227)
==14753== by 0x4AA52C8: handler_list_ensure (gsignal.c:420)
==14753== by 0x4AA6118: handler_insert (gsignal.c:715)
==14753== by 0x4AABF6B: g_signal_connect_data (gsignal.c:2512)
==14753== by 0x4BE0AA7: g_cancellable_source_new (gcancellable.c:762)
==14753== by 0x4C66B21: socket_source_new (gsocket.c:3951)
==14753== by 0x4C66DA1: g_socket_create_source (gsocket.c:4013)
==14753== by 0x4C751FB: add_sources (gsocketlistener.c:611)
==14753== by 0x4C75A06: g_socket_listener_accept_socket_async (gsocketlistener.c:863)
==14753== by 0x4C75C44: g_socket_listener_accept_async (gsocketlistener.c:922)
==14753== by 0x4C7D999: do_accept (gsocketservice.c:121)
==14753== by 0x4C7DEBA: g_socket_service_changed (gsocketservice.c:223)
==14753== by 0x4C76B1F: g_socket_listener_add_any_inet_port (gsocketlistener.c:1271)
==14753== by 0x402B6D: test_happy_eyeballs_cancel_instant (gsocketclient-slow.c:149)
==14753== by 0x492DC00: test_case_run (gtestutils.c:2597)
==14753== by 0x492E13D: g_test_run_suite_internal (gtestutils.c:2685)
==14753== by 0x492E22E: g_test_run_suite_internal (gtestutils.c:2697)
==14753== by 0x492E22E: g_test_run_suite_internal (gtestutils.c:2697)
==14753== by 0x492E22E: g_test_run_suite_internal (gtestutils.c:2697)
==14753== by 0x492E4F0: g_test_run_suite (gtestutils.c:2772)
==14753== by 0x492C902: g_test_run (gtestutils.c:2007)
==14753== by 0x402DA1: main (gsocketclient-slow.c:177)
==14753==
==14753== 176 (40 direct, 136 indirect) bytes in 1 blocks are definitely lost in loss record 1,050 of 1,088
==14753== at 0x483AD19: realloc (vg_replace_malloc.c:836)
==14753== by 0x48F9D51: g_realloc (gmem.c:164)
==14753== by 0x4AA4DA7: g_bsearch_array_grow (gbsearcharray.h:212)
==14753== by 0x4AA4E60: g_bsearch_array_insert (gbsearcharray.h:227)
==14753== by 0x4AA52C8: handler_list_ensure (gsignal.c:420)
==14753== by 0x4AA6118: handler_insert (gsignal.c:715)
==14753== by 0x4AABF6B: g_signal_connect_data (gsignal.c:2512)
==14753== by 0x4BE0AA7: g_cancellable_source_new (gcancellable.c:762)
==14753== by 0x4C66B21: socket_source_new (gsocket.c:3951)
==14753== by 0x4C66DA1: g_socket_create_source (gsocket.c:4013)
==14753== by 0x4C751FB: add_sources (gsocketlistener.c:611)
==14753== by 0x4C75A06: g_socket_listener_accept_socket_async (gsocketlistener.c:863)
==14753== by 0x4C75C44: g_socket_listener_accept_async (gsocketlistener.c:922)
==14753== by 0x4C7D999: do_accept (gsocketservice.c:121)
==14753== by 0x4C7DEBA: g_socket_service_changed (gsocketservice.c:223)
==14753== by 0x4C76B1F: g_socket_listener_add_any_inet_port (gsocketlistener.c:1271)
==14753== by 0x402935: test_happy_eyeballs_cancel_delayed (gsocketclient-slow.c:117)
==14753== by 0x492DC00: test_case_run (gtestutils.c:2597)
==14753== by 0x492E13D: g_test_run_suite_internal (gtestutils.c:2685)
==14753== by 0x492E22E: g_test_run_suite_internal (gtestutils.c:2697)
==14753== by 0x492E22E: g_test_run_suite_internal (gtestutils.c:2697)
==14753== by 0x492E22E: g_test_run_suite_internal (gtestutils.c:2697)
==14753== by 0x492E4F0: g_test_run_suite (gtestutils.c:2772)
==14753== by 0x492C902: g_test_run (gtestutils.c:2007)
==14753== by 0x402DA1: main (gsocketclient-slow.c:177)
==14753==
==14753== LEAK SUMMARY:
==14753== definitely lost: 120 bytes in 3 blocks
==14753== indirectly lost: 1,368 bytes in 49 blocks
==14753== possibly lost: 136 bytes in 3 blocks
==14753== still reachable: 23,509 bytes in 319 blocks
==14753== of which reachable via heuristic:
==14753== length64 : 880 bytes in 19 blocks
==14753== newarray : 1,664 bytes in 24 blocks
==14753== suppressed: 65,155 bytes in 722 blocks
==14753== Reachable blocks (those to which a pointer was found) are not shown.
==14753== To see them, rerun with: --leak-check=full --show-leak-kinds=all