diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | gtk/gtkiconfactory.c | 9 |
2 files changed, 11 insertions, 3 deletions
@@ -1,5 +1,10 @@ 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) + +2007-10-16 Matthias Clasen <mclasen@redhat.com> + * gtk/gtktextiter.c (gtk_text_iter_forward_line): Improve the docs. (#486155, Owen Taylor) 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) { |