diff --git a/ChangeLog b/ChangeLog index 88fbcb245f..bd9d4cdc78 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,13 @@ +2007-01-01 Matthias Clasen + + * gtk/gtkicontheme.c (load_themes): Waste less time + with non-directories. (#391725, Chris Wilson) + +2007-01-01 Matthias Clasen + + * gtk/gtkcellrendererprogress.c: Implement activity mode + for GtkCellRendererProgress. (#377851, Brad Taylor) + 2007-01-01 Matthias Clasen Fix some IPP compliance issues. (#391523, Albrecht Dress) diff --git a/gtk/gtkicontheme.c b/gtk/gtkicontheme.c index 11b53e9369..757b57e4f4 100644 --- a/gtk/gtkicontheme.c +++ b/gtk/gtkicontheme.c @@ -1051,20 +1051,21 @@ load_themes (GtkIconTheme *icon_theme) dir = icon_theme->priv->search_path[base]; dir_mtime = g_slice_new (IconThemeDirMtime); - dir_mtime->cache = _gtk_icon_cache_new_for_path (dir); - dir_mtime->dir = g_strdup (dir); - if (g_stat (dir, &stat_buf) == 0 && S_ISDIR (stat_buf.st_mode)) - dir_mtime->mtime = stat_buf.st_mtime; - else - dir_mtime->mtime = 0; - priv->dir_mtimes = g_list_append (priv->dir_mtimes, dir_mtime); + dir_mtime->dir = g_strdup (dir); + dir_mtime->mtime = 0; + dir_mtime->cache = NULL; + + if (g_stat (dir, &stat_buf) != 0 || !S_ISDIR (stat_buf.st_mode)) + continue; + dir_mtime->mtime = stat_buf.st_mtime; + + dir_mtime->cache = _gtk_icon_cache_new_for_path (dir); if (dir_mtime->cache != NULL) continue; gdir = g_dir_open (dir, 0, NULL); - if (gdir == NULL) continue;