diff options
author | Oleksiy Vyalov <ovyalov@google.com> | 2015-07-14 18:54:52 +0000 |
---|---|---|
committer | Oleksiy Vyalov <ovyalov@google.com> | 2015-07-14 18:54:52 +0000 |
commit | 28b6b62cb701a652bd247855832ed7a93eec4eb3 (patch) | |
tree | bf63d490020ae18287872f6c55967a3ab9b73bbf | |
parent | c24189e970874c1de4999c6e9f9fefe698409c78 (diff) |
Fix temp port file path generation in lldb-platform.
http://reviews.llvm.org/D11152
git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@242182 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | tools/lldb-server/lldb-platform.cpp | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/tools/lldb-server/lldb-platform.cpp b/tools/lldb-server/lldb-platform.cpp index 43a4359d4..4dfa7d23a 100644 --- a/tools/lldb-server/lldb-platform.cpp +++ b/tools/lldb-server/lldb-platform.cpp @@ -102,15 +102,14 @@ display_usage (const char *progname, const char *subcommand) static Error save_port_to_file(const uint16_t port, const FileSpec &port_file_spec) { - const ConstString& port_file_dir = port_file_spec.GetDirectory(); - auto error = FileSystem::MakeDirectory( - FileSpec(port_file_dir.AsCString(), false), eFilePermissionsDirectoryDefault); + FileSpec temp_file_spec(port_file_spec.GetDirectory().AsCString(), false); + auto error = FileSystem::MakeDirectory(temp_file_spec, eFilePermissionsDirectoryDefault); if (error.Fail()) - return Error("Failed to create directory %s: %s", port_file_dir.AsCString(), error.AsCString()); + return Error("Failed to create directory %s: %s", temp_file_spec.GetCString(), error.AsCString()); llvm::SmallString<PATH_MAX> temp_file_path; - auto err_code = llvm::sys::fs::createTemporaryFile( - port_file_spec.GetPath().c_str(), "", temp_file_path); + temp_file_spec.AppendPathComponent("port-file.%%%%%%"); + auto err_code = llvm::sys::fs::createUniqueFile(temp_file_spec.GetCString(), temp_file_path); if (err_code) return Error("Failed to create temp file: %s", err_code.message().c_str()); |