Replace 'mkdir' shell invocation by native function call.

Summary: Now that Host provide a MakeDirectory function, we can use it instead of relying on command line tool to create a directory.

CC: lldb-commits

Differential Revision: http://llvm-reviews.chandlerc.com/D2356

llvm-svn: 196801
This commit is contained in:
Jean-Daniel Dupas 2013-12-09 19:16:14 +00:00
parent 65d42bcc2b
commit e5f4780d9b
2 changed files with 5 additions and 17 deletions

View File

@ -273,14 +273,7 @@ static lldb_private::Error
MakeCacheFolderForFile (const FileSpec& module_cache_spec)
{
FileSpec module_cache_folder = module_cache_spec.CopyByRemovingLastPathComponent();
StreamString mkdir_folder_cmd;
mkdir_folder_cmd.Printf("mkdir -p %s/%s", module_cache_folder.GetDirectory().AsCString(), module_cache_folder.GetFilename().AsCString());
return Host::RunShellCommand(mkdir_folder_cmd.GetData(),
NULL,
NULL,
NULL,
NULL,
60);
return Host::MakeDirectory(module_cache_folder.GetPath().c_str(), eFilePermissionsDirectoryDefault);
}
static lldb_private::Error

View File

@ -288,16 +288,11 @@ PlatformMacOSX::GetFile (const lldb_private::FileSpec &platform_file,
}
// bring in the remote module file
FileSpec module_cache_folder = module_cache_spec.CopyByRemovingLastPathComponent();
StreamString mkdir_folder_cmd;
// try to make the local directory first
mkdir_folder_cmd.Printf("mkdir -p %s/%s", module_cache_folder.GetDirectory().AsCString(), module_cache_folder.GetFilename().AsCString());
Host::RunShellCommand(mkdir_folder_cmd.GetData(),
NULL,
NULL,
NULL,
NULL,
60);
Error err = GetFile(platform_file, module_cache_spec);
Error err = Host::MakeDirectory(module_cache_folder.GetPath().c_str(), eFilePermissionsDirectoryDefault);
if (err.Fail())
return err;
err = GetFile(platform_file, module_cache_spec);
if (err.Fail())
return err;
if (module_cache_spec.Exists())