Index: content/browser/fileapi/fileapi_message_filter.cc |
diff --git a/content/browser/fileapi/fileapi_message_filter.cc b/content/browser/fileapi/fileapi_message_filter.cc |
index e52a4b2597cb9b46aa9bd31ca0b7914813adfb10..318d9566448ae9eca368caf434c75492a03577cf 100644 |
--- a/content/browser/fileapi/fileapi_message_filter.cc |
+++ b/content/browser/fileapi/fileapi_message_filter.cc |
@@ -20,7 +20,6 @@ |
#include "build/build_config.h" |
#include "content/browser/bad_message.h" |
#include "content/browser/child_process_security_policy_impl.h" |
-#include "content/browser/fileapi/blob_storage_host.h" |
#include "content/browser/fileapi/browser_file_system_helper.h" |
#include "content/browser/fileapi/chrome_blob_storage_context.h" |
#include "content/browser/streams/stream_registry.h" |
@@ -56,9 +55,7 @@ namespace content { |
namespace { |
-const uint32_t kFilteredMessageClasses[] = { |
- BlobMsgStart, FileSystemMsgStart, |
-}; |
+const uint32_t kFilteredMessageClasses[] = {FileSystemMsgStart, BlobMsgStart}; |
void RevokeFilePermission(int child_id, const base::FilePath& path) { |
ChildProcessSecurityPolicyImpl::GetInstance()->RevokeAllPermissionsForFile( |
@@ -118,18 +115,13 @@ void FileAPIMessageFilter::OnChannelConnected(int32_t peer_pid) { |
DCHECK(request_context_); |
} |
- blob_storage_host_.reset( |
- new BlobStorageHost(blob_storage_context_->context())); |
- |
operation_runner_ = context_->CreateFileSystemOperationRunner(); |
} |
void FileAPIMessageFilter::OnChannelClosing() { |
DCHECK_CURRENTLY_ON(BrowserThread::IO); |
- // Unregister all the blob and stream URLs that are previously registered in |
- // this process. |
- blob_storage_host_.reset(); |
+ // Unregister all stream URLs that are previously registered in this process. |
for (base::hash_set<std::string>::const_iterator iter = stream_urls_.begin(); |
iter != stream_urls_.end(); ++iter) { |
stream_context_->registry()->UnregisterStream(GURL(*iter)); |
@@ -171,19 +163,6 @@ bool FileAPIMessageFilter::OnMessageReceived(const IPC::Message& message) { |
OnDidReceiveSnapshotFile) |
IPC_MESSAGE_HANDLER(FileSystemHostMsg_SyncGetPlatformPath, |
OnSyncGetPlatformPath) |
- IPC_MESSAGE_HANDLER(BlobHostMsg_StartBuilding, OnStartBuildingBlob) |
- IPC_MESSAGE_HANDLER(BlobHostMsg_AppendBlobDataItem, |
- OnAppendBlobDataItemToBlob) |
- IPC_MESSAGE_HANDLER(BlobHostMsg_SyncAppendSharedMemory, |
- OnAppendSharedMemoryToBlob) |
- IPC_MESSAGE_HANDLER(BlobHostMsg_FinishBuilding, OnFinishBuildingBlob) |
- IPC_MESSAGE_HANDLER(BlobHostMsg_IncrementRefCount, |
- OnIncrementBlobRefCount) |
- IPC_MESSAGE_HANDLER(BlobHostMsg_DecrementRefCount, |
- OnDecrementBlobRefCount) |
- IPC_MESSAGE_HANDLER(BlobHostMsg_RegisterPublicURL, |
- OnRegisterPublicBlobURL) |
- IPC_MESSAGE_HANDLER(BlobHostMsg_RevokePublicURL, OnRevokePublicBlobURL) |
IPC_MESSAGE_HANDLER(StreamHostMsg_StartBuilding, OnStartBuildingStream) |
IPC_MESSAGE_HANDLER(StreamHostMsg_AppendBlobDataItem, |
OnAppendBlobDataItemToStream) |
@@ -514,86 +493,6 @@ void FileAPIMessageFilter::OnDidReceiveSnapshotFile(int request_id) { |
in_transit_snapshot_files_.erase(request_id); |
} |
-void FileAPIMessageFilter::OnStartBuildingBlob(const std::string& uuid) { |
- DCHECK_CURRENTLY_ON(BrowserThread::IO); |
- ignore_result(blob_storage_host_->StartBuildingBlob(uuid)); |
-} |
- |
-void FileAPIMessageFilter::OnAppendBlobDataItemToBlob( |
- const std::string& uuid, |
- const storage::DataElement& item) { |
- DCHECK_CURRENTLY_ON(BrowserThread::IO); |
- if (item.type() == storage::DataElement::TYPE_FILE_FILESYSTEM) { |
- FileSystemURL filesystem_url(context_->CrackURL(item.filesystem_url())); |
- if (!FileSystemURLIsValid(context_, filesystem_url) || |
- !security_policy_->CanReadFileSystemFile(process_id_, filesystem_url)) { |
- ignore_result(blob_storage_host_->CancelBuildingBlob(uuid)); |
- return; |
- } |
- } |
- if (item.type() == storage::DataElement::TYPE_FILE && |
- !security_policy_->CanReadFile(process_id_, item.path())) { |
- ignore_result(blob_storage_host_->CancelBuildingBlob(uuid)); |
- return; |
- } |
- if (item.length() == 0) { |
- bad_message::ReceivedBadMessage(this, |
- bad_message::FAMF_APPEND_ITEM_TO_BLOB); |
- return; |
- } |
- ignore_result(blob_storage_host_->AppendBlobDataItem(uuid, item)); |
-} |
- |
-void FileAPIMessageFilter::OnAppendSharedMemoryToBlob( |
- const std::string& uuid, |
- base::SharedMemoryHandle handle, |
- uint32_t buffer_size) { |
- DCHECK(base::SharedMemory::IsHandleValid(handle)); |
- if (!buffer_size) { |
- bad_message::ReceivedBadMessage( |
- this, bad_message::FAMF_APPEND_SHARED_MEMORY_TO_BLOB); |
- return; |
- } |
- base::SharedMemory shared_memory(handle, true); |
- if (!shared_memory.Map(buffer_size)) { |
- ignore_result(blob_storage_host_->CancelBuildingBlob(uuid)); |
- return; |
- } |
- |
- storage::DataElement item; |
- item.SetToSharedBytes(static_cast<char*>(shared_memory.memory()), |
- buffer_size); |
- ignore_result(blob_storage_host_->AppendBlobDataItem(uuid, item)); |
-} |
- |
-void FileAPIMessageFilter::OnFinishBuildingBlob( |
- const std::string& uuid, const std::string& content_type) { |
- DCHECK_CURRENTLY_ON(BrowserThread::IO); |
- ignore_result(blob_storage_host_->FinishBuildingBlob(uuid, content_type)); |
- // TODO(michaeln): check return values once blink has migrated, crbug/174200 |
-} |
- |
-void FileAPIMessageFilter::OnIncrementBlobRefCount(const std::string& uuid) { |
- DCHECK_CURRENTLY_ON(BrowserThread::IO); |
- ignore_result(blob_storage_host_->IncrementBlobRefCount(uuid)); |
-} |
- |
-void FileAPIMessageFilter::OnDecrementBlobRefCount(const std::string& uuid) { |
- DCHECK_CURRENTLY_ON(BrowserThread::IO); |
- ignore_result(blob_storage_host_->DecrementBlobRefCount(uuid)); |
-} |
- |
-void FileAPIMessageFilter::OnRegisterPublicBlobURL( |
- const GURL& public_url, const std::string& uuid) { |
- DCHECK_CURRENTLY_ON(BrowserThread::IO); |
- ignore_result(blob_storage_host_->RegisterPublicBlobURL(public_url, uuid)); |
-} |
- |
-void FileAPIMessageFilter::OnRevokePublicBlobURL(const GURL& public_url) { |
- DCHECK_CURRENTLY_ON(BrowserThread::IO); |
- ignore_result(blob_storage_host_->RevokePublicBlobURL(public_url)); |
-} |
- |
void FileAPIMessageFilter::OnStartBuildingStream( |
const GURL& url, const std::string& content_type) { |
DCHECK_CURRENTLY_ON(BrowserThread::IO); |