Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(652)

Unified Diff: webkit/fileapi/file_system_operation.cc

Issue 8466003: 2nd try: Bind: Merge FileUtilProxy and FileSystemFileUtilProxy: CreateOrOpen/Close (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 9 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « webkit/fileapi/file_system_file_util_proxy.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: webkit/fileapi/file_system_operation.cc
diff --git a/webkit/fileapi/file_system_operation.cc b/webkit/fileapi/file_system_operation.cc
index 7c504a620eca62ff7a77451811b58882a68fd68a..84f66ebab04a8a1bdef00c2a0c11ec4ec2707619 100644
--- a/webkit/fileapi/file_system_operation.cc
+++ b/webkit/fileapi/file_system_operation.cc
@@ -71,10 +71,17 @@ FileSystemOperation::FileSystemOperation(
}
FileSystemOperation::~FileSystemOperation() {
- if (file_writer_delegate_.get())
- FileSystemFileUtilProxy::Close(
- operation_context_, proxy_, file_writer_delegate_->file(),
+ if (file_writer_delegate_.get()) {
+ FileSystemOperationContext* c =
+ new FileSystemOperationContext(operation_context_);
+ base::FileUtilProxy::RelayClose(
+ proxy_,
+ base::Bind(&FileSystemFileUtil::Close,
+ base::Unretained(c->src_file_util()),
+ base::Owned(c)),
+ file_writer_delegate_->file(),
FileSystemFileUtilProxy::StatusCallback());
+ }
}
void FileSystemOperation::OpenFileSystem(
@@ -366,12 +373,19 @@ void FileSystemOperation::DelayedWriteForQuota(quota::QuotaStatusCode status,
operation_context_.src_origin_url(),
operation_context_.src_type()));
- FileSystemFileUtilProxy::CreateOrOpen(
- operation_context_,
+ int file_flags = base::PLATFORM_FILE_OPEN |
+ base::PLATFORM_FILE_WRITE |
+ base::PLATFORM_FILE_ASYNC;
+
+ base::FileUtilProxy::RelayCreateOrOpen(
proxy_,
- src_virtual_path_,
- base::PLATFORM_FILE_OPEN | base::PLATFORM_FILE_WRITE |
- base::PLATFORM_FILE_ASYNC,
+ base::Bind(&FileSystemFileUtil::CreateOrOpen,
+ base::Unretained(operation_context_.src_file_util()),
+ base::Unretained(&operation_context_),
+ src_virtual_path_, file_flags),
+ base::Bind(&FileSystemFileUtil::Close,
+ base::Unretained(operation_context_.src_file_util()),
+ base::Unretained(&operation_context_)),
base::Bind(&FileSystemOperation::OnFileOpenedForWrite,
weak_factory_.GetWeakPtr()));
}
@@ -478,8 +492,15 @@ void FileSystemOperation::DelayedOpenFileForQuota(quota::QuotaStatusCode status,
operation_context_.src_origin_url(),
operation_context_.src_type()));
- FileSystemFileUtilProxy::CreateOrOpen(
- operation_context_, proxy_, src_virtual_path_, file_flags_,
+ base::FileUtilProxy::RelayCreateOrOpen(
+ proxy_,
+ base::Bind(&FileSystemFileUtil::CreateOrOpen,
+ base::Unretained(operation_context_.src_file_util()),
+ base::Unretained(&operation_context_),
+ src_virtual_path_, file_flags_),
+ base::Bind(&FileSystemFileUtil::Close,
+ base::Unretained(operation_context_.src_file_util()),
+ base::Unretained(&operation_context_)),
base::Bind(&FileSystemOperation::DidOpenFile,
weak_factory_.GetWeakPtr()));
}
« no previous file with comments | « webkit/fileapi/file_system_file_util_proxy.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698