summaryrefslogtreecommitdiff
path: root/gtk/gtkiconfactory.c
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2007-10-16 20:08:31 +0000
committerMatthias Clasen <matthiasc@src.gnome.org>2007-10-16 20:08:31 +0000
commit892d287fa3d05aa5827f7928a360fc82a49805f0 (patch)
tree13025ae5c3459c50b4c30158fb50f4ea89c65733 /gtk/gtkiconfactory.c
parent365e7efc3533cbc706b7285f65dcf51034edbb1a (diff)
downloadgtk+-892d287fa3d05aa5827f7928a360fc82a49805f0.tar.gz
Be more careful when handling (GtkIconSize)-1. (#456137, Harry Lu, Chris
2007-10-16 Matthias Clasen <mclasen@redhat.com> * gkt/gtkiconsize.c: Be more careful when handling (GtkIconSize)-1. (#456137, Harry Lu, Chris Wang, et al) svn path=/trunk/; revision=18916
Diffstat (limited to 'gtk/gtkiconfactory.c')
-rw-r--r--gtk/gtkiconfactory.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/gtk/gtkiconfactory.c b/gtk/gtkiconfactory.c
index d581d605b2..b10e0e685b 100644
--- a/gtk/gtkiconfactory.c
+++ b/gtk/gtkiconfactory.c
@@ -831,6 +831,9 @@ icon_size_lookup_intern (GtkSettings *settings,
init_icon_sizes ();
+ if (size == (GtkIconSize)-1)
+ return FALSE:
+
if (size >= icon_sizes_used)
return FALSE;
@@ -1338,7 +1341,7 @@ find_best_matching_source (GtkIconSet *icon_set,
if ((s->any_direction || (s->direction == direction)) &&
(s->any_state || (s->state == state)) &&
- (s->any_size || (sizes_equivalent (size, s->size))))
+ (s->any_size || size == (GtkIconSize)-1 || (sizes_equivalent (size, s->size))))
{
if (!g_slist_find (failed, s))
{
@@ -1417,7 +1420,7 @@ render_icon_name_pixbuf (GtkIconSource *icon_source,
if (!gtk_icon_size_lookup_for_settings (settings, size, &width, &height))
{
- if (size == -1)
+ if (size == (GtkIconSize)-1)
{
/* Find an available size close to 48
*/
@@ -2438,7 +2441,7 @@ find_in_cache (GtkIconSet *icon_set,
if (icon->style == style &&
icon->direction == direction &&
icon->state == state &&
- icon->size == size)
+ (size == (GtkIconSize)-1 || icon->size == size))
{
if (prev)
{