Index: webkit/browser/fileapi/async_file_util_adapter.cc |
diff --git a/webkit/browser/fileapi/async_file_util_adapter.cc b/webkit/browser/fileapi/async_file_util_adapter.cc |
index 8fa1ba70dfda3258adab9be758a79c4baf2c1a4a..1664a0bbf3b01091816f66fbf8f9d41a95016376 100644 |
--- a/webkit/browser/fileapi/async_file_util_adapter.cc |
+++ b/webkit/browser/fileapi/async_file_util_adapter.cc |
@@ -142,165 +142,180 @@ AsyncFileUtilAdapter::~AsyncFileUtilAdapter() { |
} |
bool AsyncFileUtilAdapter::CreateOrOpen( |
- FileSystemOperationContext* context, |
+ scoped_ptr<FileSystemOperationContext> context, |
const FileSystemURL& url, |
int file_flags, |
const CreateOrOpenCallback& callback) { |
+ FileSystemOperationContext* context_ptr = context.release(); |
return base::FileUtilProxy::RelayCreateOrOpen( |
- context->task_runner(), |
+ context_ptr->task_runner(), |
Bind(&FileSystemFileUtil::CreateOrOpen, Unretained(sync_file_util_.get()), |
- context, url, file_flags), |
+ context_ptr, url, file_flags), |
Bind(&FileSystemFileUtil::Close, Unretained(sync_file_util_.get()), |
- context), |
+ base::Owned(context_ptr)), |
callback); |
} |
bool AsyncFileUtilAdapter::EnsureFileExists( |
- FileSystemOperationContext* context, |
+ scoped_ptr<FileSystemOperationContext> context, |
const FileSystemURL& url, |
const EnsureFileExistsCallback& callback) { |
EnsureFileExistsHelper* helper = new EnsureFileExistsHelper; |
- return context->task_runner()->PostTaskAndReply( |
+ FileSystemOperationContext* context_ptr = context.release(); |
+ return context_ptr->task_runner()->PostTaskAndReply( |
FROM_HERE, |
Bind(&EnsureFileExistsHelper::RunWork, Unretained(helper), |
- sync_file_util_.get(), context, url), |
+ sync_file_util_.get(), base::Owned(context_ptr), url), |
Bind(&EnsureFileExistsHelper::Reply, Owned(helper), callback)); |
} |
bool AsyncFileUtilAdapter::CreateDirectory( |
- FileSystemOperationContext* context, |
+ scoped_ptr<FileSystemOperationContext> context, |
const FileSystemURL& url, |
bool exclusive, |
bool recursive, |
const StatusCallback& callback) { |
+ FileSystemOperationContext* context_ptr = context.release(); |
return base::PostTaskAndReplyWithResult( |
- context->task_runner(), FROM_HERE, |
+ context_ptr->task_runner(), FROM_HERE, |
Bind(&FileSystemFileUtil::CreateDirectory, |
Unretained(sync_file_util_.get()), |
- context, url, exclusive, recursive), |
+ base::Owned(context_ptr), url, exclusive, recursive), |
callback); |
} |
bool AsyncFileUtilAdapter::GetFileInfo( |
- FileSystemOperationContext* context, |
+ scoped_ptr<FileSystemOperationContext> context, |
const FileSystemURL& url, |
const GetFileInfoCallback& callback) { |
+ FileSystemOperationContext* context_ptr = context.release(); |
GetFileInfoHelper* helper = new GetFileInfoHelper; |
- return context->task_runner()->PostTaskAndReply( |
+ return context_ptr->task_runner()->PostTaskAndReply( |
FROM_HERE, |
Bind(&GetFileInfoHelper::GetFileInfo, Unretained(helper), |
- sync_file_util_.get(), context, url), |
+ sync_file_util_.get(), base::Owned(context_ptr), url), |
Bind(&GetFileInfoHelper::ReplyFileInfo, Owned(helper), callback)); |
} |
bool AsyncFileUtilAdapter::ReadDirectory( |
- FileSystemOperationContext* context, |
+ scoped_ptr<FileSystemOperationContext> context, |
const FileSystemURL& url, |
const ReadDirectoryCallback& callback) { |
+ FileSystemOperationContext* context_ptr = context.release(); |
ReadDirectoryHelper* helper = new ReadDirectoryHelper; |
- return context->task_runner()->PostTaskAndReply( |
+ return context_ptr->task_runner()->PostTaskAndReply( |
FROM_HERE, |
Bind(&ReadDirectoryHelper::RunWork, Unretained(helper), |
- sync_file_util_.get(), context, url), |
+ sync_file_util_.get(), base::Owned(context_ptr), url), |
Bind(&ReadDirectoryHelper::Reply, Owned(helper), callback)); |
} |
bool AsyncFileUtilAdapter::Touch( |
- FileSystemOperationContext* context, |
+ scoped_ptr<FileSystemOperationContext> context, |
const FileSystemURL& url, |
const base::Time& last_access_time, |
const base::Time& last_modified_time, |
const StatusCallback& callback) { |
+ FileSystemOperationContext* context_ptr = context.release(); |
return base::PostTaskAndReplyWithResult( |
- context->task_runner(), FROM_HERE, |
+ context_ptr->task_runner(), FROM_HERE, |
Bind(&FileSystemFileUtil::Touch, Unretained(sync_file_util_.get()), |
- context, url, last_access_time, last_modified_time), |
+ base::Owned(context_ptr), url, |
+ last_access_time, last_modified_time), |
callback); |
} |
bool AsyncFileUtilAdapter::Truncate( |
- FileSystemOperationContext* context, |
+ scoped_ptr<FileSystemOperationContext> context, |
const FileSystemURL& url, |
int64 length, |
const StatusCallback& callback) { |
+ FileSystemOperationContext* context_ptr = context.release(); |
return base::PostTaskAndReplyWithResult( |
- context->task_runner(), FROM_HERE, |
+ context_ptr->task_runner(), FROM_HERE, |
Bind(&FileSystemFileUtil::Truncate, Unretained(sync_file_util_.get()), |
- context, url, length), |
+ base::Owned(context_ptr), url, length), |
callback); |
} |
bool AsyncFileUtilAdapter::CopyFileLocal( |
- FileSystemOperationContext* context, |
+ scoped_ptr<FileSystemOperationContext> context, |
const FileSystemURL& src_url, |
const FileSystemURL& dest_url, |
const StatusCallback& callback) { |
+ FileSystemOperationContext* context_ptr = context.release(); |
return base::PostTaskAndReplyWithResult( |
- context->task_runner(), FROM_HERE, |
+ context_ptr->task_runner(), FROM_HERE, |
Bind(&FileSystemFileUtil::CopyOrMoveFile, |
Unretained(sync_file_util_.get()), |
- context, src_url, dest_url, true /* copy */), |
+ base::Owned(context_ptr), src_url, dest_url, true /* copy */), |
callback); |
} |
bool AsyncFileUtilAdapter::MoveFileLocal( |
- FileSystemOperationContext* context, |
+ scoped_ptr<FileSystemOperationContext> context, |
const FileSystemURL& src_url, |
const FileSystemURL& dest_url, |
const StatusCallback& callback) { |
+ FileSystemOperationContext* context_ptr = context.release(); |
return base::PostTaskAndReplyWithResult( |
- context->task_runner(), FROM_HERE, |
+ context_ptr->task_runner(), FROM_HERE, |
Bind(&FileSystemFileUtil::CopyOrMoveFile, |
Unretained(sync_file_util_.get()), |
- context, src_url, dest_url, false /* copy */), |
+ base::Owned(context_ptr), src_url, dest_url, false /* copy */), |
callback); |
} |
bool AsyncFileUtilAdapter::CopyInForeignFile( |
- FileSystemOperationContext* context, |
+ scoped_ptr<FileSystemOperationContext> context, |
const base::FilePath& src_file_path, |
const FileSystemURL& dest_url, |
const StatusCallback& callback) { |
+ FileSystemOperationContext* context_ptr = context.release(); |
return base::PostTaskAndReplyWithResult( |
- context->task_runner(), FROM_HERE, |
+ context_ptr->task_runner(), FROM_HERE, |
Bind(&FileSystemFileUtil::CopyInForeignFile, |
Unretained(sync_file_util_.get()), |
- context, src_file_path, dest_url), |
+ base::Owned(context_ptr), src_file_path, dest_url), |
callback); |
} |
bool AsyncFileUtilAdapter::DeleteFile( |
- FileSystemOperationContext* context, |
+ scoped_ptr<FileSystemOperationContext> context, |
const FileSystemURL& url, |
const StatusCallback& callback) { |
+ FileSystemOperationContext* context_ptr = context.release(); |
return base::PostTaskAndReplyWithResult( |
- context->task_runner(), FROM_HERE, |
+ context_ptr->task_runner(), FROM_HERE, |
Bind(&FileSystemFileUtil::DeleteFile, |
- Unretained(sync_file_util_.get()), context, url), |
+ Unretained(sync_file_util_.get()), |
+ base::Owned(context_ptr), url), |
callback); |
} |
bool AsyncFileUtilAdapter::DeleteDirectory( |
- FileSystemOperationContext* context, |
+ scoped_ptr<FileSystemOperationContext> context, |
const FileSystemURL& url, |
const StatusCallback& callback) { |
+ FileSystemOperationContext* context_ptr = context.release(); |
return base::PostTaskAndReplyWithResult( |
- context->task_runner(), FROM_HERE, |
+ context_ptr->task_runner(), FROM_HERE, |
Bind(&FileSystemFileUtil::DeleteDirectory, |
Unretained(sync_file_util_.get()), |
- context, url), |
+ base::Owned(context_ptr), url), |
callback); |
} |
bool AsyncFileUtilAdapter::CreateSnapshotFile( |
- FileSystemOperationContext* context, |
+ scoped_ptr<FileSystemOperationContext> context, |
const FileSystemURL& url, |
const CreateSnapshotFileCallback& callback) { |
+ FileSystemOperationContext* context_ptr = context.release(); |
GetFileInfoHelper* helper = new GetFileInfoHelper; |
- return context->task_runner()->PostTaskAndReply( |
+ return context_ptr->task_runner()->PostTaskAndReply( |
FROM_HERE, |
Bind(&GetFileInfoHelper::CreateSnapshotFile, Unretained(helper), |
- sync_file_util_.get(), context, url), |
+ sync_file_util_.get(), base::Owned(context_ptr), url), |
Bind(&GetFileInfoHelper::ReplySnapshotFile, Owned(helper), callback)); |
} |