# Calculate format=diff
diff --git a/kdeui/icons/kiconloader.cpp b/kdeui/icons/kiconloader.cpp
index ef54230..af3ef94 100644
--- a/kdeui/icons/kiconloader.cpp
+++ b/kdeui/icons/kiconloader.cpp
@@ -1041,6 +1041,10 @@ K3Icon KIconLoaderPrivate::findMatchingIcon(const QString& name, int size) const
             }
 #endif
             if (genericFallback)
+            {
+                // restore genericFallback flag
+                genericFallback = name.endsWith(QLatin1String("-x-generic"));
                 // we already tested the base name
                 break;
+            }
 
            int rindex = currentName.lastIndexOf('-');
            if (rindex > 1) { // > 1 so that we don't split x-content or x-epoc
