From a3636b6e6e9123ffb6d466be4f003f83fa8a5299 Mon Sep 17 00:00:00 2001 From: rbuj Date: Sat, 23 Oct 2021 13:18:49 +0200 Subject: eel-background: fix memory leak --- eel/eel-background.c | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/eel/eel-background.c b/eel/eel-background.c index 5fc95215..b0fc1a15 100644 --- a/eel/eel-background.c +++ b/eel/eel-background.c @@ -1003,13 +1003,19 @@ void eel_bg_load_from_gsettings (EelBackground *self, GSettings *settings) { - char *keyfile = g_settings_get_string (settings, MATE_BG_KEY_PICTURE_FILENAME); + char *picture_filename; - if (!g_file_test (keyfile, G_FILE_TEST_EXISTS) && (*keyfile != '\0')) + picture_filename = g_settings_get_string (settings, + MATE_BG_KEY_PICTURE_FILENAME); + if ((*picture_filename != '\0') && + !g_file_test (picture_filename, G_FILE_TEST_EXISTS)) { - *keyfile = '\0'; - g_settings_set_string (settings, MATE_BG_KEY_PICTURE_FILENAME, keyfile); + *picture_filename = '\0'; + g_settings_set_string (settings, + MATE_BG_KEY_PICTURE_FILENAME, + picture_filename); } + g_free (picture_filename); if (self->details->bg) mate_bg_load_from_gsettings (self->details->bg, -- cgit v1.2.1