Index: webkit/fileapi/file_system_file_util_proxy.cc |
diff --git a/webkit/fileapi/file_system_file_util_proxy.cc b/webkit/fileapi/file_system_file_util_proxy.cc |
index a26bb390a389e85d8800630bfb89cb73c343eacd..8b892e834e6ffa09ef8f4e76e414893b87343e96 100644 |
--- a/webkit/fileapi/file_system_file_util_proxy.cc |
+++ b/webkit/fileapi/file_system_file_util_proxy.cc |
@@ -10,6 +10,7 @@ |
#include "webkit/fileapi/cross_file_util_helper.h" |
#include "webkit/fileapi/file_system_file_util.h" |
#include "webkit/fileapi/file_system_operation_context.h" |
+#include "webkit/fileapi/file_util_delete_helper.h" |
namespace fileapi { |
@@ -120,10 +121,10 @@ bool FileSystemFileUtilProxy::Delete( |
const FileSystemPath& path, |
bool recursive, |
const StatusCallback& callback) { |
+ FileUtilDeleteHelper* helper = new FileUtilDeleteHelper(context, file_util); |
return base::FileUtilProxy::RelayFileTask( |
message_loop_proxy, FROM_HERE, |
- base::Bind(&FileSystemFileUtil::Delete, base::Unretained(file_util), |
- context, path, recursive), |
+ Bind(&FileUtilDeleteHelper::DoWork, Owned(helper), path, recursive), |
callback); |
} |
@@ -137,10 +138,10 @@ bool FileSystemFileUtilProxy::CreateOrOpen( |
const CreateOrOpenCallback& callback) { |
return base::FileUtilProxy::RelayCreateOrOpen( |
message_loop_proxy, |
- base::Bind(&FileSystemFileUtil::CreateOrOpen, base::Unretained(file_util), |
- context, path, file_flags), |
- base::Bind(&FileSystemFileUtil::Close, base::Unretained(file_util), |
- context), |
+ Bind(&FileSystemFileUtil::CreateOrOpen, Unretained(file_util), |
+ context, path, file_flags), |
+ Bind(&FileSystemFileUtil::Close, Unretained(file_util), |
+ context), |
callback); |
} |
@@ -208,9 +209,8 @@ bool FileSystemFileUtilProxy::CreateDirectory( |
const StatusCallback& callback) { |
return base::FileUtilProxy::RelayFileTask( |
message_loop_proxy, FROM_HERE, |
- base::Bind(&FileSystemFileUtil::CreateDirectory, |
- base::Unretained(file_util), |
- context, path, exclusive, recursive), |
+ Bind(&FileSystemFileUtil::CreateDirectory, Unretained(file_util), |
+ context, path, exclusive, recursive), |
callback); |
} |
@@ -255,8 +255,8 @@ bool FileSystemFileUtilProxy::Touch( |
const StatusCallback& callback) { |
return base::FileUtilProxy::RelayFileTask( |
message_loop_proxy, FROM_HERE, |
- base::Bind(&FileSystemFileUtil::Touch, base::Unretained(file_util), |
- context, path, last_access_time, last_modified_time), |
+ Bind(&FileSystemFileUtil::Touch, Unretained(file_util), |
+ context, path, last_access_time, last_modified_time), |
callback); |
} |
@@ -270,8 +270,8 @@ bool FileSystemFileUtilProxy::Truncate( |
const StatusCallback& callback) { |
return base::FileUtilProxy::RelayFileTask( |
message_loop_proxy, FROM_HERE, |
- base::Bind(&FileSystemFileUtil::Truncate, base::Unretained(file_util), |
- context, path, length), |
+ Bind(&FileSystemFileUtil::Truncate, Unretained(file_util), |
+ context, path, length), |
callback); |
} |