Index: chrome/browser/chromeos/file_manager/fileapi_util.cc |
diff --git a/chrome/browser/chromeos/file_manager/fileapi_util.cc b/chrome/browser/chromeos/file_manager/fileapi_util.cc |
index 4f7860ab6ea65e1cf440d4733f27e34b055ca4e8..7ba59dd17c197a7c48a6ea1a8e95ef40b2329cb3 100644 |
--- a/chrome/browser/chromeos/file_manager/fileapi_util.cc |
+++ b/chrome/browser/chromeos/file_manager/fileapi_util.cc |
@@ -71,9 +71,10 @@ class FileDefinitionListConverter { |
// Then, calls OnIteratorConverted with the created entry definition. |
void OnResolvedURL(scoped_ptr<FileDefinitionListConverter> self_deleter, |
FileDefinitionList::const_iterator iterator, |
- const GURL& root_url, |
- const std::string& name, |
- base::File::Error error); |
+ base::File::Error error, |
+ const fileapi::FileSystemInfo& info, |
+ const base::FilePath& file_path, |
+ bool is_directory); |
// Called when the iterator is converted. Adds the |entry_definition| to |
// |results_| and calls ConvertNextIterator() for the next element. |
@@ -150,13 +151,8 @@ void FileDefinitionListConverter::ConvertNextIterator( |
// The converter object will be deleted if the callback is not called because |
// of shutdown during ResolveURL(). |
- // |
- // TODO(mtomasz, nhiroki): Call FileSystemContext::ResolveURL() directly, |
- // after removing redundant thread restrictions in there. |
- backend->ResolveURL( |
+ file_system_context_->ResolveURL( |
url, |
- // Not sandboxed file systems are not creatable via ResolveURL(). |
- fileapi::OPEN_FILE_SYSTEM_FAIL_IF_NONEXISTENT, |
base::Bind(&FileDefinitionListConverter::OnResolvedURL, |
base::Unretained(this), |
base::Passed(&self_deleter), |
@@ -166,21 +162,22 @@ void FileDefinitionListConverter::ConvertNextIterator( |
void FileDefinitionListConverter::OnResolvedURL( |
scoped_ptr<FileDefinitionListConverter> self_deleter, |
FileDefinitionList::const_iterator iterator, |
- const GURL& root_url, |
- const std::string& name, |
- base::File::Error error) { |
+ base::File::Error error, |
+ const fileapi::FileSystemInfo& info, |
+ const base::FilePath& file_path, |
+ bool is_directory) { |
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
EntryDefinition entry_definition; |
- entry_definition.file_system_root_url = root_url.spec(); |
- entry_definition.file_system_name = name; |
- entry_definition.is_directory = iterator->is_directory; |
+ entry_definition.file_system_root_url = info.root_url.spec(); |
+ entry_definition.file_system_name = info.name; |
+ entry_definition.is_directory = is_directory; |
entry_definition.error = error; |
// Construct a target Entry.fullPath value from the virtual path and the |
// root URL. Eg. Downloads/A/b.txt -> A/b.txt. |
const base::FilePath root_virtual_path = |
- file_system_context_->CrackURL(root_url).virtual_path(); |
+ file_system_context_->CrackURL(info.root_url).virtual_path(); |
DCHECK(root_virtual_path == iterator->virtual_path || |
root_virtual_path.IsParent(iterator->virtual_path)); |
mtomasz
2014/04/18 07:00:11
FYI, this fails in tests.
|
base::FilePath full_path; |