From 3d29715e1edb073ed1e0494cdfd8aef7b0637ca5 Mon Sep 17 00:00:00 2001 From: Dave Davenport Date: Sat, 2 Mar 2024 19:38:05 +0100 Subject: [IconFetcher] Don't free on removal from thread-pool --- source/rofi-icon-fetcher.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/source/rofi-icon-fetcher.c b/source/rofi-icon-fetcher.c index 397e06fd..1fd37004 100644 --- a/source/rofi-icon-fetcher.c +++ b/source/rofi-icon-fetcher.c @@ -93,6 +93,10 @@ static void rofi_icon_fetch_entry_free(gpointer data); */ IconFetcher *rofi_icon_fetcher_data = NULL; +static void rofi_icon_fetch_thread_pool_entry_remove(gpointer data) { + IconFetcherNameEntry *entry = (IconFetcherNameEntry *)data; + // Mark it in a way it should be re-fetched on next query? +} static void rofi_icon_fetch_entry_free(gpointer data) { IconFetcherNameEntry *entry = (IconFetcherNameEntry *)data; @@ -413,7 +417,7 @@ uint32_t rofi_icon_fetcher_query_advanced(const char *name, const int wsize, // Push into fetching queue. sentry->state.callback = rofi_icon_fetcher_worker; - sentry->state.free = rofi_icon_fetch_entry_free; + sentry->state.free = rofi_icon_fetch_thread_pool_entry_remove; sentry->state.priority = G_PRIORITY_LOW; g_thread_pool_push(tpool, sentry, NULL); -- cgit v1.2.3