summaryrefslogtreecommitdiffstats
path: root/Source/cmOutputConverter.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'Source/cmOutputConverter.cxx')
-rw-r--r--Source/cmOutputConverter.cxx12
1 files changed, 6 insertions, 6 deletions
diff --git a/Source/cmOutputConverter.cxx b/Source/cmOutputConverter.cxx
index a23478b..a45e37b 100644
--- a/Source/cmOutputConverter.cxx
+++ b/Source/cmOutputConverter.cxx
@@ -168,14 +168,14 @@ std::string cmOutputConverter::Convert(RelativeRoot remote,
const char* remotePath = this->GetRelativeRootPath(remote);
assert(remotePath != 0);
- if (!local.empty() && !optional) {
- std::vector<std::string> components;
- cmSystemTools::SplitPath(local, components);
- std::string result = this->ConvertToRelativePath(components, remotePath);
- return this->ConvertToOutputFormat(result, output);
+ if (local.empty() || optional) {
+ return this->ConvertToOutputFormat(remotePath, output);
}
- return this->ConvertToOutputFormat(remotePath, output);
+ std::vector<std::string> components;
+ cmSystemTools::SplitPath(local, components);
+ std::string result = this->ConvertToRelativePath(components, remotePath);
+ return this->ConvertToOutputFormat(result, output);
}
static bool cmOutputConverterNotAbove(const char* a, const char* b)