C++: Also cache result of misses in resolveFile()

Change-Id: Ib501bbe16548b194ff5028a1b3ab74c5f0e3230d
Reviewed-by: Erik Verbruggen <erik.verbruggen@digia.com>
This commit is contained in:
hjk
2013-04-16 10:40:41 +02:00
committed by Erik Verbruggen
parent 980fe3203d
commit fb72d5324e

View File

@@ -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;
}