summaryrefslogtreecommitdiffstats
path: root/webkit/fileapi/file_system_operation.cc
diff options
context:
space:
mode:
authorkinuko@chromium.org <kinuko@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-11-09 06:57:30 +0000
committerkinuko@chromium.org <kinuko@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-11-09 06:57:30 +0000
commitfea88cddf68126cc14ccc13ad80deee0a3e6b7eb (patch)
tree6577bc8e5d582e5de1370bcdcb4f09ae3037b8eb /webkit/fileapi/file_system_operation.cc
parenta88511be325a2c7bc6090b736194a564eacd916c (diff)
downloadchromium_src-fea88cddf68126cc14ccc13ad80deee0a3e6b7eb.zip
chromium_src-fea88cddf68126cc14ccc13ad80deee0a3e6b7eb.tar.gz
chromium_src-fea88cddf68126cc14ccc13ad80deee0a3e6b7eb.tar.bz2
Bind: Reimplement remaining FileSystemFileUtilProxy methods using PostTaskAndReply
BUG=none TEST=test_shell_tests:FileSystem* Review URL: http://codereview.chromium.org/8425006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@109198 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit/fileapi/file_system_operation.cc')
-rw-r--r--webkit/fileapi/file_system_operation.cc46
1 files changed, 29 insertions, 17 deletions
diff --git a/webkit/fileapi/file_system_operation.cc b/webkit/fileapi/file_system_operation.cc
index f329cc1..5db7268 100644
--- a/webkit/fileapi/file_system_operation.cc
+++ b/webkit/fileapi/file_system_operation.cc
@@ -132,10 +132,11 @@ void FileSystemOperation::DelayedCreateFileForQuota(
operation_context_.src_origin_url(),
operation_context_.src_type()));
- FileSystemFileUtilProxy::EnsureFileExists(
- operation_context_,
+ FileSystemFileUtilProxy::RelayEnsureFileExists(
proxy_,
- src_virtual_path_,
+ base::Bind(&FileSystemFileUtil::EnsureFileExists,
+ base::Unretained(operation_context_.src_file_util()),
+ &operation_context_, src_virtual_path_),
base::Bind(
exclusive ? &FileSystemOperation::DidEnsureFileExistsExclusive
: &FileSystemOperation::DidEnsureFileExistsNonExclusive,
@@ -263,8 +264,11 @@ void FileSystemOperation::DirectoryExists(const GURL& path) {
return;
}
- FileSystemFileUtilProxy::GetFileInfo(
- operation_context_, proxy_, src_virtual_path_,
+ FileSystemFileUtilProxy::RelayGetFileInfo(
+ proxy_,
+ base::Bind(&FileSystemFileUtil::GetFileInfo,
+ base::Unretained(operation_context_.src_file_util()),
+ &operation_context_, src_virtual_path_),
base::Bind(&FileSystemOperation::DidDirectoryExists, base::Owned(this)));
}
@@ -278,8 +282,11 @@ void FileSystemOperation::FileExists(const GURL& path) {
return;
}
- FileSystemFileUtilProxy::GetFileInfo(
- operation_context_, proxy_, src_virtual_path_,
+ FileSystemFileUtilProxy::RelayGetFileInfo(
+ proxy_,
+ base::Bind(&FileSystemFileUtil::GetFileInfo,
+ base::Unretained(operation_context_.src_file_util()),
+ &operation_context_, src_virtual_path_),
base::Bind(&FileSystemOperation::DidFileExists, base::Owned(this)));
}
@@ -293,8 +300,11 @@ void FileSystemOperation::GetMetadata(const GURL& path) {
return;
}
- FileSystemFileUtilProxy::GetFileInfo(
- operation_context_, proxy_, src_virtual_path_,
+ FileSystemFileUtilProxy::RelayGetFileInfo(
+ proxy_,
+ base::Bind(&FileSystemFileUtil::GetFileInfo,
+ base::Unretained(operation_context_.src_file_util()),
+ &operation_context_, src_virtual_path_),
base::Bind(&FileSystemOperation::DidGetMetadata, base::Owned(this)));
}
@@ -308,8 +318,11 @@ void FileSystemOperation::ReadDirectory(const GURL& path) {
return;
}
- FileSystemFileUtilProxy::ReadDirectory(
- operation_context_, proxy_, src_virtual_path_,
+ FileSystemFileUtilProxy::RelayReadDirectory(
+ proxy_,
+ base::Bind(&FileSystemFileUtil::ReadDirectory,
+ base::Unretained(operation_context_.src_file_util()),
+ &operation_context_, src_virtual_path_),
base::Bind(&FileSystemOperation::DidReadDirectory, base::Owned(this)));
}
@@ -327,8 +340,7 @@ void FileSystemOperation::Remove(const GURL& path, bool recursive) {
proxy_, FROM_HERE,
base::Bind(&FileSystemFileUtil::Delete,
base::Unretained(operation_context_.src_file_util()),
- &operation_context_,
- src_virtual_path_, recursive),
+ &operation_context_, src_virtual_path_, recursive),
base::Bind(&FileSystemOperation::DidFinishFileOperation,
base::Owned(this)));
}
@@ -375,8 +387,7 @@ void FileSystemOperation::DelayedWriteForQuota(quota::QuotaStatusCode status,
proxy_,
base::Bind(&FileSystemFileUtil::CreateOrOpen,
base::Unretained(operation_context_.src_file_util()),
- &operation_context_,
- src_virtual_path_, file_flags),
+ &operation_context_, src_virtual_path_, file_flags),
base::Bind(&FileSystemFileUtil::Close,
base::Unretained(operation_context_.src_file_util()),
&operation_context_),
@@ -413,8 +424,7 @@ void FileSystemOperation::DelayedTruncateForQuota(int64 length,
proxy_, FROM_HERE,
base::Bind(&FileSystemFileUtil::Truncate,
base::Unretained(operation_context_.src_file_util()),
- &operation_context_,
- src_virtual_path_, length),
+ &operation_context_, src_virtual_path_, length),
base::Bind(&FileSystemOperation::DidFinishFileOperation,
base::Owned(this)));
}
@@ -575,6 +585,8 @@ void FileSystemOperation::GetUsageAndQuotaThenCallback(
void FileSystemOperation::DidGetRootPath(
bool success,
const FilePath& path, const std::string& name) {
+ if (!dispatcher_.get())
+ return;
DCHECK(success || path.empty());
GURL result;
if (!dispatcher_.get())