summaryrefslogtreecommitdiffstats
path: root/src/gui/image
diff options
context:
space:
mode:
authorMarc Mutz <marc.mutz@kdab.com>2014-08-09 02:27:31 +0200
committerMarc Mutz <marc.mutz@kdab.com>2014-08-23 13:19:58 +0200
commit87ccab8bd690bfb6644175ab4956a57838b48a04 (patch)
tree6d6bff7a711a97b865507fc25b39cc84171fb010 /src/gui/image
parent0611f8d9954ecbab89853278c14b38cecdbc028b (diff)
QIconLoader: replace an inefficient QList with a QVector
QIconDirInfo is larger than a pointer, so holding it in a QList is horribly inefficient. Fix by holding it in a QVector instead. Change-Id: I6551d2d2941447e600a33c3d68edf46db002d96c Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
Diffstat (limited to 'src/gui/image')
-rw-r--r--src/gui/image/qiconloader.cpp2
-rw-r--r--src/gui/image/qiconloader_p.h5
2 files changed, 4 insertions, 3 deletions
diff --git a/src/gui/image/qiconloader.cpp b/src/gui/image/qiconloader.cpp
index 62ec7fac2e..12d9f9f14d 100644
--- a/src/gui/image/qiconloader.cpp
+++ b/src/gui/image/qiconloader.cpp
@@ -268,7 +268,7 @@ QThemeIconEntries QIconLoader::findIconHelper(const QString &themeName,
}
QString contentDir = theme.contentDir() + QLatin1Char('/');
- QList<QIconDirInfo> subDirs = theme.keyList();
+ const QVector<QIconDirInfo> subDirs = theme.keyList();
const QString svgext(QLatin1String(".svg"));
const QString pngext(QLatin1String(".png"));
diff --git a/src/gui/image/qiconloader_p.h b/src/gui/image/qiconloader_p.h
index 4812e1cfe3..d979b07fa6 100644
--- a/src/gui/image/qiconloader_p.h
+++ b/src/gui/image/qiconloader_p.h
@@ -62,6 +62,7 @@
#include <private/qicon_p.h>
#include <private/qfactoryloader_p.h>
#include <QtCore/QHash>
+#include <QtCore/QVector>
#include <QtCore/QTypeInfo>
QT_BEGIN_NAMESPACE
@@ -146,13 +147,13 @@ public:
QIconTheme(const QString &name);
QIconTheme() : m_valid(false) {}
QStringList parents() { return m_parents; }
- QList <QIconDirInfo> keyList() { return m_keyList; }
+ QVector<QIconDirInfo> keyList() { return m_keyList; }
QString contentDir() { return m_contentDir; }
bool isValid() { return m_valid; }
private:
QString m_contentDir;
- QList <QIconDirInfo> m_keyList;
+ QVector<QIconDirInfo> m_keyList;
QStringList m_parents;
bool m_valid;
};