Sophie

Sophie

distrib > Fedora > 13 > i386 > media > updates-src > by-pkgid > b9facf0654340569c1cf73ee9355fe33 > files > 1

kdebase-runtime-4.5.5-1.fc13.src.rpm

diff -up kdebase-runtime-4.1.1/kcontrol/icons/iconthemes.cpp.orig kdebase-runtime-4.1.1/kcontrol/icons/iconthemes.cpp
--- kdebase-runtime-4.1.1/kcontrol/icons/iconthemes.cpp.orig	2008-09-16 13:24:43.000000000 +0200
+++ kdebase-runtime-4.1.1/kcontrol/icons/iconthemes.cpp	2008-09-16 15:30:14.000000000 +0200
@@ -415,15 +415,16 @@ void loadPreview(QLabel *label, KIconThe
 {
     const int size = qMin(48, icontheme.defaultSize(KIconLoader::Desktop));
     KSvgRenderer renderer;
-    foreach(const QString &name, iconnames) {
-        K3Icon icon = icontheme.iconPath(QString("%1.png").arg(name), size, KIconLoader::MatchBest);
+    foreach(const QString &iconthemename, QStringList() << icontheme.internalName() << icontheme.inherits()) {
+      foreach(const QString &name, iconnames) {
+        K3Icon icon = KIconTheme(iconthemename).iconPath(QString("%1.png").arg(name), size, KIconLoader::MatchBest);
         if (icon.isValid()) {
             label->setPixmap(QPixmap(icon.path).scaled(size, size));
             return;
         }
-        icon = icontheme.iconPath(QString("%1.svg").arg(name), size, KIconLoader::MatchBest);
+        icon = KIconTheme(iconthemename).iconPath(QString("%1.svg").arg(name), size, KIconLoader::MatchBest);
         if( ! icon.isValid() ) {
-            icon = icontheme.iconPath(QString("%1.svgz").arg(name), size, KIconLoader::MatchBest);
+            icon = KIconTheme(iconthemename).iconPath(QString("%1.svgz").arg(name), size, KIconLoader::MatchBest);
             if( ! icon.isValid() ) {
                 continue;
             }
@@ -437,6 +438,7 @@ void loadPreview(QLabel *label, KIconThe
             label->setPixmap(pix.scaled(size, size));
             return;
         }
+      }
     }
     label->setPixmap(QPixmap());
 }