diff options
author | hjk <hjk121@nokiamail.com> | 2013-04-16 10:40:41 +0200 |
---|---|---|
committer | Erik Verbruggen <erik.verbruggen@digia.com> | 2013-04-16 12:36:00 +0200 |
commit | fb72d5324eea5ae7e5e4944956c5413cef1ffb05 (patch) | |
tree | 85ac8677404dfa356d43103a83244c5db3556935 | |
parent | 980fe3203d418235857bcd8f5a4a3d32ace15892 (diff) | |
download | qt-creator-fb72d5324eea5ae7e5e4944956c5413cef1ffb05.tar.gz |
C++: Also cache result of misses in resolveFile()
Change-Id: Ib501bbe16548b194ff5028a1b3ab74c5f0e3230d
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
-rw-r--r-- | src/plugins/cpptools/cppmodelmanager.cpp | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/src/plugins/cpptools/cppmodelmanager.cpp b/src/plugins/cpptools/cppmodelmanager.cpp index cef667fec0..5916216e57 100644 --- a/src/plugins/cpptools/cppmodelmanager.cpp +++ b/src/plugins/cpptools/cppmodelmanager.cpp @@ -342,12 +342,10 @@ bool CppPreprocessor::checkFile(const QString &absoluteFilePath) const QString CppPreprocessor::resolveFile(const QString &fileName, IncludeType type) { if (type == IncludeGlobal) { - QString fn = m_fileNameCache.value(fileName); - - if (! fn.isEmpty()) - return fn; - - fn = resolveFile_helper(fileName, type); + QHash<QString, QString>::ConstIterator it = m_fileNameCache.find(fileName); + if (it != m_fileNameCache.end()) + return it.value(); + const QString fn = resolveFile_helper(fileName, type); m_fileNameCache.insert(fileName, fn); return fn; } |