diff options
Diffstat (limited to 'Source/cmInstallCommand.cxx')
-rw-r--r-- | Source/cmInstallCommand.cxx | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/Source/cmInstallCommand.cxx b/Source/cmInstallCommand.cxx index 685fc671c..394f976ca 100644 --- a/Source/cmInstallCommand.cxx +++ b/Source/cmInstallCommand.cxx @@ -5,6 +5,7 @@ #include "cmsys/Glob.hxx" #include <sstream> #include <stddef.h> +#include <utility> #include "cmAlgorithms.h" #include "cmCommandArgumentsHelper.h" @@ -154,7 +155,7 @@ bool cmInstallCommand::HandleScriptMode(std::vector<std::string> const& args) } else if (doing_script) { doing_script = false; std::string script = arg; - if (!cmSystemTools::FileIsFullPath(script.c_str())) { + if (!cmSystemTools::FileIsFullPath(script)) { script = this->Makefile->GetCurrentSourceDirectory(); script += "/"; script += arg; @@ -1044,14 +1045,14 @@ bool cmInstallCommand::HandleDirectoryMode( // Convert this directory to a full path. std::string dir = args[i]; std::string::size_type gpos = cmGeneratorExpression::Find(dir); - if (gpos != 0 && !cmSystemTools::FileIsFullPath(dir.c_str())) { + if (gpos != 0 && !cmSystemTools::FileIsFullPath(dir)) { dir = this->Makefile->GetCurrentSourceDirectory(); dir += "/"; dir += args[i]; } // Make sure the name is a directory. - if (cmSystemTools::FileExists(dir.c_str()) && + if (cmSystemTools::FileExists(dir) && !cmSystemTools::FileIsDirectory(dir)) { std::ostringstream e; e << args[0] << " given non-directory \"" << args[i] @@ -1061,7 +1062,7 @@ bool cmInstallCommand::HandleDirectoryMode( } // Store the directory for installation. - dirs.push_back(dir); + dirs.push_back(std::move(dir)); } else if (doing == DoingConfigurations) { configurations.push_back(args[i]); } else if (doing == DoingDestination) { @@ -1133,7 +1134,7 @@ bool cmInstallCommand::HandleDirectoryMode( // Support installing an empty directory. if (dirs.empty() && destination) { - dirs.push_back(""); + dirs.emplace_back(); } // Check if there is something to do. @@ -1374,7 +1375,7 @@ bool cmInstallCommand::MakeFilesFullPath( for (std::string const& relFile : relFiles) { std::string file = relFile; std::string::size_type gpos = cmGeneratorExpression::Find(file); - if (gpos != 0 && !cmSystemTools::FileIsFullPath(file.c_str())) { + if (gpos != 0 && !cmSystemTools::FileIsFullPath(file)) { file = this->Makefile->GetCurrentSourceDirectory(); file += "/"; file += relFile; @@ -1388,7 +1389,7 @@ bool cmInstallCommand::MakeFilesFullPath( return false; } // Store the file for installation. - absFiles.push_back(file); + absFiles.push_back(std::move(file)); } return true; } |