Index: webkit/browser/fileapi/file_system_operation_runner.cc |
diff --git a/webkit/browser/fileapi/file_system_operation_runner.cc b/webkit/browser/fileapi/file_system_operation_runner.cc |
index 3553595d82da8f7351aeb06b4e59f6cb432215bf..174bbd08ea7f1b913d7a743507d16c1cf28bfc6b 100644 |
--- a/webkit/browser/fileapi/file_system_operation_runner.cc |
+++ b/webkit/browser/fileapi/file_system_operation_runner.cc |
@@ -8,6 +8,7 @@ |
#include "base/message_loop/message_loop_proxy.h" |
#include "base/stl_util.h" |
#include "net/url_request/url_request_context.h" |
+#include "webkit/browser/blob/blob_url_request_job_factory.h" |
#include "webkit/browser/fileapi/file_observers.h" |
#include "webkit/browser/fileapi/file_stream_writer.h" |
#include "webkit/browser/fileapi/file_system_context.h" |
@@ -230,7 +231,7 @@ OperationID FileSystemOperationRunner::Remove( |
OperationID FileSystemOperationRunner::Write( |
const net::URLRequestContext* url_request_context, |
const FileSystemURL& url, |
- const GURL& blob_url, |
+ scoped_ptr<webkit_blob::BlobDataHandle> blob, |
int64 offset, |
const WriteCallback& callback) { |
base::PlatformFileError error = base::PLATFORM_FILE_OK; |
@@ -252,11 +253,14 @@ OperationID FileSystemOperationRunner::Write( |
return handle.id; |
} |
- DCHECK(blob_url.is_valid()); |
scoped_ptr<FileWriterDelegate> writer_delegate( |
new FileWriterDelegate(writer.Pass())); |
- scoped_ptr<net::URLRequest> blob_request(url_request_context->CreateRequest( |
- blob_url, writer_delegate.get())); |
+ |
+ scoped_ptr<net::URLRequest> blob_request( |
+ webkit_blob::BlobProtocolHandler::CreateBlobRequest( |
+ blob.Pass(), |
+ url_request_context, |
+ writer_delegate.get())); |
PrepareForWrite(handle.id, url); |
operation->Write( |