Avoid duplicate entries in QGenericUnixTheme::themeNames()
authorJ-P Nurmi <jpnurmi@digia.com>
Mon, 12 Nov 2012 10:50:07 +0000 (11:50 +0100)
committerThe Qt Project <gerrit-noreply@qt-project.org>
Mon, 12 Nov 2012 11:33:24 +0000 (12:33 +0100)
Change-Id: I6dc258274dc6614f56f306c30c95fe20c14fdf89
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
src/platformsupport/themes/genericunix/qgenericunixthemes.cpp

index d219fbe..a39f26e 100644 (file)
@@ -427,9 +427,9 @@ QStringList QGenericUnixTheme::themeNames()
         } else if (QGuiApplicationPrivate::platformIntegration()->services()->desktopEnvironment() == QByteArray("GNOME")) {
             result.push_back(QLatin1String(QGnomeTheme::name));
         }
-        const QByteArray session = qgetenv("DESKTOP_SESSION");
-        if (!session.isEmpty() && session != "default")
-            result.push_back(QString::fromLocal8Bit(session));
+        const QString session = QString::fromLocal8Bit(qgetenv("DESKTOP_SESSION"));
+        if (!session.isEmpty() && session != QStringLiteral("default") && !result.contains(session))
+            result.push_back(session);
     } // desktopSettingsAware
     if (result.isEmpty())
         result.push_back(QLatin1String(QGenericUnixTheme::name));