summaryrefslogtreecommitdiffstats
path: root/Source/cmAddSubDirectoryCommand.cxx
diff options
context:
space:
mode:
authorVitaly Stakhovsky <vvs31415@gitlab.org>2018-08-24 17:58:19 (GMT)
committerBrad King <brad.king@kitware.com>2018-08-27 18:07:43 (GMT)
commitc8fd23ec6f33eef8cf11d81938c379590080bd19 (patch)
tree75a04f4a2a037ededbee0a92628c103af03fc816 /Source/cmAddSubDirectoryCommand.cxx
parent0897c3cf585853358ef7ec2bd180dbb2e3288b21 (diff)
downloadCMake-c8fd23ec6f33eef8cf11d81938c379590080bd19.zip
CMake-c8fd23ec6f33eef8cf11d81938c379590080bd19.tar.gz
CMake-c8fd23ec6f33eef8cf11d81938c379590080bd19.tar.bz2
cmMakefile: return directories as const std::string&
Diffstat (limited to 'Source/cmAddSubDirectoryCommand.cxx')
-rw-r--r--Source/cmAddSubDirectoryCommand.cxx10
1 files changed, 5 insertions, 5 deletions
diff --git a/Source/cmAddSubDirectoryCommand.cxx b/Source/cmAddSubDirectoryCommand.cxx
index f673c72..75bd6fb 100644
--- a/Source/cmAddSubDirectoryCommand.cxx
+++ b/Source/cmAddSubDirectoryCommand.cxx
@@ -80,17 +80,17 @@ bool cmAddSubDirectoryCommand::InitialPass(
// Remove the CurrentDirectory from the srcPath and replace it
// with the CurrentOutputDirectory.
- const char* src = this->Makefile->GetCurrentSourceDirectory();
- const char* bin = this->Makefile->GetCurrentBinaryDirectory();
- size_t srcLen = strlen(src);
- size_t binLen = strlen(bin);
+ const std::string& src = this->Makefile->GetCurrentSourceDirectory();
+ const std::string& bin = this->Makefile->GetCurrentBinaryDirectory();
+ size_t srcLen = src.length();
+ size_t binLen = bin.length();
if (srcLen > 0 && src[srcLen - 1] == '/') {
--srcLen;
}
if (binLen > 0 && bin[binLen - 1] == '/') {
--binLen;
}
- binPath = std::string(bin, binLen) + srcPath.substr(srcLen);
+ binPath = bin.substr(0, binLen) + srcPath.substr(srcLen);
} else {
// Use the binary directory specified.
// Interpret a relative path with respect to the current binary directory.