From 6fcc78cd8e5aa807fa9d254d2e61a302096559cf Mon Sep 17 00:00:00 2001 From: Colomban Wendling Date: Mon, 7 Nov 2022 11:57:51 +0100 Subject: Revert "[mate-bg] small cleanup" It is not possible to use the `list` pointer after it has been deleted, so the "cleanup" this commit made lead to using freed memory if any item actually got clean up. This "cleanup" also don't seem meaningful to me, as all it does otherwise is trade an assignation for a redundant test -- either of which the compiler might happily optimize out. This reverts commit 47426c90d10e9f738ecf89f35db94ca8deff55e0. --- libmate-desktop/mate-bg.c | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/libmate-desktop/mate-bg.c b/libmate-desktop/mate-bg.c index 62cc5e5..5cf2daf 100644 --- a/libmate-desktop/mate-bg.c +++ b/libmate-desktop/mate-bg.c @@ -2016,19 +2016,18 @@ static gboolean blow_expensive_caches (gpointer data) { MateBG *bg = data; - GList *list; + GList *list, *next; bg->blow_caches_id = 0; - if (bg->file_cache) { - for (list = bg->file_cache; list != NULL; list = list->next) { - FileCacheEntry *ent = list->data; + for (list = bg->file_cache; list != NULL; list = next) { + FileCacheEntry *ent = list->data; + next = list->next; - if (ent->type == PIXBUF) { - file_cache_entry_delete (ent); - bg->file_cache = g_list_delete_link (bg->file_cache, - list); - } + if (ent->type == PIXBUF) { + file_cache_entry_delete (ent); + bg->file_cache = g_list_delete_link (bg->file_cache, + list); } } -- cgit v1.2.1