From f827867a2213462af4e8aa69631d2e37baa58841 Mon Sep 17 00:00:00 2001 From: Sebastian Dransfeld Date: Sun, 16 May 2010 18:42:33 +0000 Subject: [PATCH] efreet: prefer downsizing SVN revision: 48919 --- legacy/efreet/src/lib/efreet_icon.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/legacy/efreet/src/lib/efreet_icon.c b/legacy/efreet/src/lib/efreet_icon.c index 673845c0ce..71ebef7e8f 100644 --- a/legacy/efreet/src/lib/efreet_icon.c +++ b/legacy/efreet/src/lib/efreet_icon.c @@ -673,6 +673,7 @@ efreet_icon_lookup_icon(Efreet_Icon_Theme *theme, const char *icon_name, char *icon = NULL, *tmp = NULL; Efreet_Icon_Theme_Directory *dir; double minimal_size = INT_MAX; + unsigned int ret_size; if (!theme || (theme->paths == NULL) || !icon_name || !size) return NULL; @@ -699,7 +700,9 @@ efreet_icon_lookup_icon(Efreet_Icon_Theme *theme, const char *icon_name, double distance; distance = efreet_icon_directory_size_distance(dir, size); - if (distance >= minimal_size) continue; + if (distance > minimal_size) continue; + // prefer downsizing + if ((distance == minimal_size) && (size < ret_size)) continue; tmp = efreet_icon_lookup_directory(theme, dir, icon_name); @@ -708,6 +711,7 @@ efreet_icon_lookup_icon(Efreet_Icon_Theme *theme, const char *icon_name, FREE(icon); icon = tmp; minimal_size = distance; + ret_size = size; } }