Index: trunk/src/content/worker/worker_webkitplatformsupport_impl.cc |
=================================================================== |
--- trunk/src/content/worker/worker_webkitplatformsupport_impl.cc (revision 214172) |
+++ trunk/src/content/worker/worker_webkitplatformsupport_impl.cc (working copy) |
@@ -13,6 +13,7 @@ |
#include "content/child/fileapi/webfilesystem_impl.h" |
#include "content/child/indexed_db/proxy_webidbfactory_impl.h" |
#include "content/child/quota_dispatcher.h" |
+#include "content/child/quota_message_filter.h" |
#include "content/child/thread_safe_sender.h" |
#include "content/child/webblobregistry_impl.h" |
#include "content/child/webmessageportchannel_impl.h" |
@@ -76,10 +77,12 @@ |
WorkerWebKitPlatformSupportImpl::WorkerWebKitPlatformSupportImpl( |
ThreadSafeSender* sender, |
- IPC::SyncMessageFilter* sync_message_filter) |
+ IPC::SyncMessageFilter* sync_message_filter, |
+ QuotaMessageFilter* quota_message_filter) |
: thread_safe_sender_(sender), |
child_thread_loop_(base::MessageLoopProxy::current()), |
- sync_message_filter_(sync_message_filter) { |
+ sync_message_filter_(sync_message_filter), |
+ quota_message_filter_(quota_message_filter) { |
} |
WorkerWebKitPlatformSupportImpl::~WorkerWebKitPlatformSupportImpl() { |
@@ -302,10 +305,14 @@ |
const WebKit::WebURL& storage_partition, |
WebKit::WebStorageQuotaType type, |
WebKit::WebStorageQuotaCallbacks* callbacks) { |
- ChildThread::current()->quota_dispatcher()->QueryStorageUsageAndQuota( |
- storage_partition, |
- static_cast<quota::StorageType>(type), |
- QuotaDispatcher::CreateWebStorageQuotaCallbacksWrapper(callbacks)); |
+ if (!thread_safe_sender_.get() || !quota_message_filter_.get()) |
+ return; |
+ QuotaDispatcher::ThreadSpecificInstance( |
+ thread_safe_sender_.get(), |
+ quota_message_filter_.get())->QueryStorageUsageAndQuota( |
+ storage_partition, |
+ static_cast<quota::StorageType>(type), |
+ QuotaDispatcher::CreateWebStorageQuotaCallbacksWrapper(callbacks)); |
} |
} // namespace content |