| Index: extensions/browser/extension_message_filter.cc
|
| diff --git a/extensions/browser/extension_message_filter.cc b/extensions/browser/extension_message_filter.cc
|
| index e25480dcaf54317d778d4c3e369267d1c4d89f84..f7e794bf7e5a94a2c086cdddd359ec3fc9dc85d6 100644
|
| --- a/extensions/browser/extension_message_filter.cc
|
| +++ b/extensions/browser/extension_message_filter.cc
|
| @@ -31,7 +31,9 @@ ExtensionMessageFilter::ExtensionMessageFilter(int render_process_id,
|
| DCHECK_CURRENTLY_ON(BrowserThread::UI);
|
| }
|
|
|
| -ExtensionMessageFilter::~ExtensionMessageFilter() {}
|
| +ExtensionMessageFilter::~ExtensionMessageFilter() {
|
| + DCHECK_CURRENTLY_ON(BrowserThread::IO);
|
| +}
|
|
|
| void ExtensionMessageFilter::OverrideThreadForMessage(
|
| const IPC::Message& message,
|
| @@ -53,6 +55,12 @@ void ExtensionMessageFilter::OverrideThreadForMessage(
|
| }
|
| }
|
|
|
| +void ExtensionMessageFilter::OnDestruct() const {
|
| + // Destroy the filter on the IO thread since that's where its weak pointers
|
| + // are being used.
|
| + BrowserThread::DeleteOnIOThread::Destruct(this);
|
| +}
|
| +
|
| bool ExtensionMessageFilter::OnMessageReceived(const IPC::Message& message) {
|
| bool handled = true;
|
| IPC_BEGIN_MESSAGE_MAP(ExtensionMessageFilter, message)
|
|
|