From 254b7260f49caaca78b16761d70d6239626d2129 Mon Sep 17 00:00:00 2001 From: Sebastian Holtermann Date: Fri, 1 Feb 2019 17:11:49 +0100 Subject: cmSourceFile: Check if a file is GENERATED first in the full path computation In `cmSourceFile::FindFullPath` check first if the file is GENERATED before aborting on `FindFullPathFailed`. This allows recomputation of the full path when the GENERATED property was set after the file path was computed with an error. --- Source/cmSourceFile.cxx | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Source/cmSourceFile.cxx b/Source/cmSourceFile.cxx index fbc1293..d05fb68 100644 --- a/Source/cmSourceFile.cxx +++ b/Source/cmSourceFile.cxx @@ -113,11 +113,6 @@ std::string const& cmSourceFile::GetFullPath() const bool cmSourceFile::FindFullPath(std::string* error) { - // If this method has already failed once do not try again. - if (this->FindFullPathFailed) { - return false; - } - // If the file is generated compute the location without checking on disk. if (this->GetIsGenerated()) { // The file is either already a full path or is relative to the @@ -127,6 +122,11 @@ bool cmSourceFile::FindFullPath(std::string* error) return true; } + // If this method has already failed once do not try again. + if (this->FindFullPathFailed) { + return false; + } + // The file is not generated. It must exist on disk. cmMakefile const* makefile = this->Location.GetMakefile(); // Location path -- cgit v0.12