From fb72d5324eea5ae7e5e4944956c5413cef1ffb05 Mon Sep 17 00:00:00 2001 From: hjk Date: Tue, 16 Apr 2013 10:40:41 +0200 Subject: [PATCH] C++: Also cache result of misses in resolveFile() Change-Id: Ib501bbe16548b194ff5028a1b3ab74c5f0e3230d Reviewed-by: Erik Verbruggen --- src/plugins/cpptools/cppmodelmanager.cpp | 10 ++++------ 1 file 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::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; } -- GitLab