summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYi Kong <yikong@google.com>2020-11-07 17:28:18 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2020-11-07 17:28:18 +0000
commitf9cec25141c7c8a9738b60af5e734ea89ec9913a (patch)
tree401d87753f97e61e10a32fffbf334893d8e74ab9
parent0bc01362cf9f881ec31ce04b21c817e49802c669 (diff)
parentf476a014ef457ffb3243f40ea550990c76dcf935 (diff)
downloadextras-f9cec25141c7c8a9738b60af5e734ea89ec9913a.tar.gz
Merge "simpleperf: Use std::fs::rename instead of mv shell cmd"
-rw-r--r--simpleperf/cmd_record.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/simpleperf/cmd_record.cpp b/simpleperf/cmd_record.cpp
index 749b0c51..b9aa5ba1 100644
--- a/simpleperf/cmd_record.cpp
+++ b/simpleperf/cmd_record.cpp
@@ -22,6 +22,7 @@
#include <sys/utsname.h>
#include <time.h>
#include <unistd.h>
+#include <filesystem>
#include <optional>
#include <set>
#include <string>
@@ -1543,8 +1544,13 @@ std::unique_ptr<RecordFileReader> RecordCommand::MoveRecordFile(const std::strin
return nullptr;
}
record_file_writer_.reset();
- if (!Workload::RunCmd({"mv", record_filename_, old_filename})) {
- return nullptr;
+ {
+ std::error_code ec;
+ std::filesystem::rename(record_filename_, old_filename, ec);
+ if (ec) {
+ LOG(ERROR) << "Failed to rename: " << ec.message();
+ return nullptr;
+ }
}
record_file_writer_ = CreateRecordFile(record_filename_);
if (!record_file_writer_) {