Chromium Code Reviews| Index: webkit/fileapi/file_system_operation.cc |
| diff --git a/webkit/fileapi/file_system_operation.cc b/webkit/fileapi/file_system_operation.cc |
| index e6bb1570e85fb652bd7e1eed130d371cab262616..e6e51c575f5ff7ed5f3459fc02f2edf2292fdc12 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()); |
|
willchan no longer on Chromium
2011/11/01 22:57:37
What's the long-term vision? Is FileSystemFileUtil
kinuko
2011/11/02 05:48:22
Yes, I'm going to deprecate this one (in the next
|
| + } |
| } |
| void FileSystemOperation::OpenFileSystem( |
| @@ -355,12 +362,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())); |
| } |
| @@ -464,8 +478,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())); |
| } |