[FileSystem] Move path resolution logic out of FileSpec

This patch removes the logic for resolving paths out of FileSpec and
updates call sites to rely on the FileSystem class instead.

Differential revision: https://reviews.llvm.org/D53915

llvm-svn: 345890
This commit is contained in:
Jonas Devlieghere
2018-11-01 21:05:36 +00:00
parent 8487d22d12
commit 8f3be7a32b
128 changed files with 631 additions and 632 deletions

View File

@@ -2529,7 +2529,8 @@ bool RenderScriptRuntime::LoadAllocation(Stream &strm, const uint32_t alloc_id,
"Allocation information not available");
// Check we can read from file
FileSpec file(path, true);
FileSpec file(path);
FileSystem::Instance().Resolve(file);
if (!FileSystem::Instance().Exists(file)) {
strm.Printf("Error: File %s does not exist", path);
strm.EOL();
@@ -2753,7 +2754,8 @@ bool RenderScriptRuntime::SaveAllocation(Stream &strm, const uint32_t alloc_id,
"Allocation information not available");
// Check we can create writable file
FileSpec file_spec(path, true);
FileSpec file_spec(path);
FileSystem::Instance().Resolve(file_spec);
File file(file_spec, File::eOpenOptionWrite | File::eOpenOptionCanCreate |
File::eOpenOptionTruncate);
if (!file) {
@@ -4651,7 +4653,8 @@ public:
switch (short_option) {
case 'f':
m_outfile.SetFile(option_arg, true, FileSpec::Style::native);
m_outfile.SetFile(option_arg, FileSpec::Style::native);
FileSystem::Instance().Resolve(m_outfile);
if (FileSystem::Instance().Exists(m_outfile)) {
m_outfile.Clear();
err.SetErrorStringWithFormat("file already exists: '%s'",