From 1196ac7af62887d48e4c2aabf9f1509c306178a5 Mon Sep 17 00:00:00 2001 From: Michael Catanzaro Date: Thu, 22 Aug 2024 16:14:45 -0500 Subject: [PATCH] gutils: Fix unlikely minor leaks in xdg directory functions We leak if we have a non-null empty string. This was already fixed for g_build_user_data_dir() in 1a979ab4947fc259af01ea65263aaa4d417553fb so now fix the others as well. --- glib/gutils.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/glib/gutils.c b/glib/gutils.c index 057e2bcd7..8628a568d 100644 --- a/glib/gutils.c +++ b/glib/gutils.c @@ -1940,6 +1940,7 @@ g_build_user_config_dir (void) if (!config_dir || !config_dir[0]) { gchar *home_dir = g_build_home_dir (); + g_free (config_dir); config_dir = g_build_filename (home_dir, ".config", NULL); g_free (home_dir); } @@ -2003,6 +2004,7 @@ g_build_user_cache_dir (void) if (!cache_dir || !cache_dir[0]) { gchar *home_dir = g_build_home_dir (); + g_free (cache_dir); cache_dir = g_build_filename (home_dir, ".cache", NULL); g_free (home_dir); } @@ -2065,6 +2067,7 @@ g_build_user_state_dir (void) if (!state_dir || !state_dir[0]) { gchar *home_dir = g_build_home_dir (); + g_free (state_dir); state_dir = g_build_filename (home_dir, ".local/state", NULL); g_free (home_dir); }