From 57cedb18c097a7231223b8a4279534216cad1b93 Mon Sep 17 00:00:00 2001 From: Vitaly Stakhovsky Date: Wed, 29 May 2019 08:15:40 -0400 Subject: cmSystemTools: std::string parameters for tar functions --- Source/cmCTest.cxx | 4 ++-- Source/cmSystemTools.cxx | 12 ++++++------ Source/cmSystemTools.h | 6 +++--- Source/cmcmd.cxx | 8 ++++---- 4 files changed, 15 insertions(+), 15 deletions(-) diff --git a/Source/cmCTest.cxx b/Source/cmCTest.cxx index 071ff56..d1226c3 100644 --- a/Source/cmCTest.cxx +++ b/Source/cmCTest.cxx @@ -1611,8 +1611,8 @@ std::string cmCTest::Base64GzipEncodeFile(std::string const& file) std::vector files; files.push_back(file); - if (!cmSystemTools::CreateTar(tarFile.c_str(), files, - cmSystemTools::TarCompressGZip, false)) { + if (!cmSystemTools::CreateTar(tarFile, files, cmSystemTools::TarCompressGZip, + false)) { cmCTestLog(this, ERROR_MESSAGE, "Error creating tar while " "encoding file: " diff --git a/Source/cmSystemTools.cxx b/Source/cmSystemTools.cxx index 2453aea..ef29217 100644 --- a/Source/cmSystemTools.cxx +++ b/Source/cmSystemTools.cxx @@ -1529,7 +1529,7 @@ bool cmSystemTools::IsPathToFramework(const std::string& path) cmHasLiteralSuffix(path, ".framework")); } -bool cmSystemTools::CreateTar(const char* outFileName, +bool cmSystemTools::CreateTar(const std::string& outFileName, const std::vector& files, cmTarCompression compressType, bool verbose, std::string const& mtime, @@ -1537,7 +1537,7 @@ bool cmSystemTools::CreateTar(const char* outFileName, { #if defined(CMAKE_BUILD_WITH_CMAKE) std::string cwd = cmSystemTools::GetCurrentWorkingDirectory(); - cmsys::ofstream fout(outFileName, std::ios::out | std::ios::binary); + cmsys::ofstream fout(outFileName.c_str(), std::ios::out | std::ios::binary); if (!fout) { std::string e = "Cannot open output file \""; e += outFileName; @@ -1757,7 +1757,7 @@ bool copy_data(struct archive* ar, struct archive* aw) # endif } -bool extract_tar(const char* outFileName, +bool extract_tar(const std::string& outFileName, const std::vector& files, bool verbose, bool extract) { @@ -1783,7 +1783,7 @@ bool extract_tar(const char* outFileName, } } - int r = cm_archive_read_open_file(a, outFileName, 10240); + int r = cm_archive_read_open_file(a, outFileName.c_str(), 10240); if (r) { ArchiveError("Problem with archive_read_open_file(): ", a); archive_write_free(ext); @@ -1878,7 +1878,7 @@ bool extract_tar(const char* outFileName, } #endif -bool cmSystemTools::ExtractTar(const char* outFileName, +bool cmSystemTools::ExtractTar(const std::string& outFileName, const std::vector& files, bool verbose) { @@ -1892,7 +1892,7 @@ bool cmSystemTools::ExtractTar(const char* outFileName, #endif } -bool cmSystemTools::ListTar(const char* outFileName, +bool cmSystemTools::ListTar(const std::string& outFileName, const std::vector& files, bool verbose) { diff --git a/Source/cmSystemTools.h b/Source/cmSystemTools.h index 09a4d13..7fb369e 100644 --- a/Source/cmSystemTools.h +++ b/Source/cmSystemTools.h @@ -450,14 +450,14 @@ public: TarCompressNone }; - static bool ListTar(const char* outFileName, + static bool ListTar(const std::string& outFileName, const std::vector& files, bool verbose); - static bool CreateTar(const char* outFileName, + static bool CreateTar(const std::string& outFileName, const std::vector& files, cmTarCompression compressType, bool verbose, std::string const& mtime = std::string(), std::string const& format = std::string()); - static bool ExtractTar(const char* inFileName, + static bool ExtractTar(const std::string& inFileName, const std::vector& files, bool verbose); // This should be called first thing in main // it will keep child processes from inheriting the diff --git a/Source/cmcmd.cxx b/Source/cmcmd.cxx index 4ddfddd..8f416a4 100644 --- a/Source/cmcmd.cxx +++ b/Source/cmcmd.cxx @@ -1127,7 +1127,7 @@ int cmcmd::ExecuteCMakeCommand(std::vector const& args) return 1; } if (action == cmSystemTools::TarActionList) { - if (!cmSystemTools::ListTar(outFile.c_str(), files, verbose)) { + if (!cmSystemTools::ListTar(outFile, files, verbose)) { cmSystemTools::Error("Problem listing tar: " + outFile); return 1; } @@ -1136,13 +1136,13 @@ int cmcmd::ExecuteCMakeCommand(std::vector const& args) cmSystemTools::Message("tar: No files or directories specified", "Warning"); } - if (!cmSystemTools::CreateTar(outFile.c_str(), files, compress, - verbose, mtime, format)) { + if (!cmSystemTools::CreateTar(outFile, files, compress, verbose, mtime, + format)) { cmSystemTools::Error("Problem creating tar: " + outFile); return 1; } } else if (action == cmSystemTools::TarActionExtract) { - if (!cmSystemTools::ExtractTar(outFile.c_str(), files, verbose)) { + if (!cmSystemTools::ExtractTar(outFile, files, verbose)) { cmSystemTools::Error("Problem extracting tar: " + outFile); return 1; } -- cgit v0.12