From 31906961d118cb816d26d4a67019ccd8e240ef1f Mon Sep 17 00:00:00 2001 From: Philip Withnall Date: Wed, 8 Nov 2023 11:03:58 +0000 Subject: [PATCH] glib.supp: Suppress the global_mime_dirs allocations These are one-time allocations which are still reachable at the end of the process. They cause warnings like this in valgrind: ``` ==14408== 128 bytes in 1 blocks are definitely lost in loss record 1,287 of 1,403 ==14408== at 0x4847A40: realloc (vg_replace_malloc.c:1649) ==14408== by 0x48CCD6E: g_realloc (gmem.c:201) ==14408== by 0x48F4CB1: g_string_expand (gstring.c:82) ==14408== by 0x48F4D59: g_string_sized_new (gstring.c:113) ==14408== by 0x48F4D91: g_string_new (gstring.c:134) ==14408== by 0x48A5805: g_build_path_va (gfileutils.c:1929) ==14408== by 0x48A62D1: g_build_filename_va (gfileutils.c:2222) ==14408== by 0x48A63FE: g_build_filename (gfileutils.c:2316) ==14408== by 0x491CD89: g_build_user_data_dir (gutils.c:1879) ==14408== by 0x491CDCF: g_get_user_data_dir (gutils.c:1920) ==14408== by 0x4B51E53: _g_content_type_set_mime_dirs_locked (gcontenttype.c:145) ==14408== by 0x4B51F33: g_content_type_set_mime_dirs (gcontenttype.c:194) ==14408== by 0x40C222: main (desktop-app-info.c:1880) ``` For example in https://gitlab.gnome.org/GNOME/glib/-/jobs/3278564 Signed-off-by: Philip Withnall --- tools/glib.supp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/tools/glib.supp b/tools/glib.supp index 9ff78cc15..aaf97dac0 100644 --- a/tools/glib.supp +++ b/tools/glib.supp @@ -896,6 +896,16 @@ fun:g_get_home_dir } +# gcontenttype.c caches a one-time allocation global array of @global_mime_dirs. +{ + content_type_mime_dirs_realloc + Memcheck:Leak + match-leak-kinds:reachable + fun:realloc + ... + fun:_g_content_type_set_mime_dirs_locked +} + # gdesktopappinfo.c caches a one-time allocation global table of @desktop_file_dirs. { desktop_file_dirs_malloc