| Index: third_party/WebKit/Source/core/workers/WorkerMessagingProxy.cpp
|
| diff --git a/third_party/WebKit/Source/core/workers/WorkerMessagingProxy.cpp b/third_party/WebKit/Source/core/workers/WorkerMessagingProxy.cpp
|
| index 5edfbeb65633ae2a1526d35c7b3f508ee54f9506..a246e1b0d952cf4c6a40192597c7bf5f9e4d99df 100644
|
| --- a/third_party/WebKit/Source/core/workers/WorkerMessagingProxy.cpp
|
| +++ b/third_party/WebKit/Source/core/workers/WorkerMessagingProxy.cpp
|
| @@ -86,6 +86,7 @@
|
| ASSERT(m_workerObject);
|
| ASSERT((m_executionContext->isDocument() && isMainThread())
|
| || (m_executionContext->isWorkerGlobalScope() && toWorkerGlobalScope(m_executionContext.get())->thread()->isCurrentThread()));
|
| + m_workerInspectorProxy->setWorkerGlobalScopeProxy(this);
|
| }
|
|
|
| WorkerMessagingProxy::~WorkerMessagingProxy()
|
| @@ -95,6 +96,7 @@
|
| || (m_executionContext->isWorkerGlobalScope() && toWorkerGlobalScope(m_executionContext.get())->thread()->isCurrentThread()));
|
| if (m_loaderProxy)
|
| m_loaderProxy->detachProvider(this);
|
| + m_workerInspectorProxy->setWorkerGlobalScopeProxy(nullptr);
|
| }
|
|
|
| void WorkerMessagingProxy::startWorkerGlobalScope(const KURL& scriptURL, const String& userAgent, const String& sourceCode)
|
| @@ -187,7 +189,7 @@
|
| return;
|
|
|
| RefPtrWillBeRawPtr<ConsoleMessage> consoleMessage = ConsoleMessage::create(source, level, message, sourceURL, lineNumber);
|
| - consoleMessage->setWorkerInspectorProxy(m_workerInspectorProxy.get());
|
| + consoleMessage->setWorkerGlobalScopeProxy(this);
|
| frame->console().addMessage(consoleMessage.release());
|
| }
|
|
|
| @@ -249,14 +251,25 @@
|
|
|
| void WorkerMessagingProxy::postMessageToPageInspector(const String& message)
|
| {
|
| - if (m_workerInspectorProxy)
|
| - m_workerInspectorProxy->dispatchMessageFromWorker(message);
|
| + if (!m_workerInspectorProxy)
|
| + return;
|
| + WorkerInspectorProxy::PageInspector* pageInspector = m_workerInspectorProxy->pageInspector();
|
| + if (pageInspector)
|
| + pageInspector->dispatchMessageFromWorker(message);
|
| }
|
|
|
| void WorkerMessagingProxy::postWorkerConsoleAgentEnabled()
|
| {
|
| - if (m_workerInspectorProxy)
|
| - m_workerInspectorProxy->workerConsoleAgentEnabled();
|
| + if (!m_workerInspectorProxy)
|
| + return;
|
| + WorkerInspectorProxy::PageInspector* pageInspector = m_workerInspectorProxy->pageInspector();
|
| + if (pageInspector)
|
| + pageInspector->workerConsoleAgentEnabled(this);
|
| +}
|
| +
|
| +WorkerInspectorProxy* WorkerMessagingProxy::workerInspectorProxy()
|
| +{
|
| + return m_workerInspectorProxy.get();
|
| }
|
|
|
| void WorkerMessagingProxy::confirmMessageFromWorkerObject(bool hasPendingActivity)
|
| @@ -287,7 +300,7 @@
|
| Document* document = toDocument(m_executionContext.get());
|
| LocalFrame* frame = document->frame();
|
| if (frame)
|
| - frame->console().adoptWorkerMessagesAfterTermination(m_workerInspectorProxy.get());
|
| + frame->console().adoptWorkerMessagesAfterTermination(this);
|
| }
|
|
|
| } // namespace blink
|
|
|