diff options
author | Qt Continuous Integration System <qt-info@nokia.com> | 2010-11-25 21:53:52 +0100 |
---|---|---|
committer | Qt Continuous Integration System <qt-info@nokia.com> | 2010-11-25 21:53:52 +0100 |
commit | ccebbb663a1b21204057d8b799de3ddf1b63307e (patch) | |
tree | b166fa2adbe5d7ab807189b2eb84edb4b5c0facb /qmake/generators/win32 | |
parent | 8deaf82914c5ec8da7bc49f913d03a3754e1af0c (diff) | |
parent | 68affbdc60b6cc48b6e7786ffffe2b7512cade64 (diff) | |
download | qt4-tools-ccebbb663a1b21204057d8b799de3ddf1b63307e.tar.gz |
Merge branch 'master' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into master-integration
* 'master' of scm.dev.nokia.troll.no:qt/oslo-staging-1:
fix performance penalty in Win32MakefileGenerator::findHighestVersion
Allow QDial to wrap value when wrapping property is set.
QtScript variant conversion: Convert numbers to (u)int if applicable (reviewed by khansen)
Diffstat (limited to 'qmake/generators/win32')
-rw-r--r-- | qmake/generators/win32/winmakefile.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/qmake/generators/win32/winmakefile.cpp b/qmake/generators/win32/winmakefile.cpp index 5f56d668eb..8cf970efe2 100644 --- a/qmake/generators/win32/winmakefile.cpp +++ b/qmake/generators/win32/winmakefile.cpp @@ -78,8 +78,14 @@ Win32MakefileGenerator::findHighestVersion(const QString &d, const QString &stem int biggest=-1; if(!project->isActiveConfig("no_versionlink")) { - QDir dir(bd); - QStringList entries = dir.entryList(); + static QHash<QString, QStringList> dirEntryListCache; + QStringList entries = dirEntryListCache.value(bd); + if (entries.isEmpty()) { + QDir dir(bd); + entries = dir.entryList(); + dirEntryListCache.insert(bd, entries); + } + QRegExp regx(QString("((lib)?%1([0-9]*)).(%2|prl)$").arg(dllStem).arg(ext), Qt::CaseInsensitive); for(QStringList::Iterator it = entries.begin(); it != entries.end(); ++it) { if(regx.exactMatch((*it))) { |