| Index: third_party/WebKit/Source/core/inspector/WorkerThreadDebugger.cpp
|
| diff --git a/third_party/WebKit/Source/core/inspector/WorkerThreadDebugger.cpp b/third_party/WebKit/Source/core/inspector/WorkerThreadDebugger.cpp
|
| index 531919df7e7a55be0a3f54ce27a1cbbbc58e1c7b..7ce109746cb6bd35e0a903610847a9cac26d909d 100644
|
| --- a/third_party/WebKit/Source/core/inspector/WorkerThreadDebugger.cpp
|
| +++ b/third_party/WebKit/Source/core/inspector/WorkerThreadDebugger.cpp
|
| @@ -34,7 +34,9 @@
|
| #include "bindings/core/v8/SourceLocation.h"
|
| #include "bindings/core/v8/V8ScriptRunner.h"
|
| #include "core/inspector/ConsoleMessage.h"
|
| +#include "core/inspector/ConsoleMessageStorage.h"
|
| #include "core/inspector/IdentifiersFactory.h"
|
| +#include "core/workers/WorkerGlobalScope.h"
|
| #include "core/workers/WorkerReportingProxy.h"
|
| #include "core/workers/WorkerThread.h"
|
| #include <v8.h>
|
| @@ -55,7 +57,6 @@ WorkerThreadDebugger* WorkerThreadDebugger::from(v8::Isolate* isolate)
|
| WorkerThreadDebugger::WorkerThreadDebugger(WorkerThread* workerThread, v8::Isolate* isolate)
|
| : ThreadDebugger(isolate)
|
| , m_workerThread(workerThread)
|
| - , m_muteConsoleCount(0)
|
| {
|
| }
|
|
|
| @@ -71,6 +72,14 @@ void WorkerThreadDebugger::reportConsoleMessage(ExecutionContext* context, Conso
|
| m_workerThread->workerReportingProxy().reportConsoleMessage(message);
|
| }
|
|
|
| +int WorkerThreadDebugger::contextGroupId(ExecutionContext* context)
|
| +{
|
| + if (!context)
|
| + return 0;
|
| + DCHECK(context == m_workerThread->workerGlobalScope());
|
| + return workerContextGroupId;
|
| +}
|
| +
|
| void WorkerThreadDebugger::contextCreated(v8::Local<v8::Context> context)
|
| {
|
| debugger()->contextCreated(V8ContextInfo(context, workerContextGroupId, true, m_workerThread->workerGlobalScope()->url().getString(), "", "", false));
|
| @@ -83,30 +92,12 @@ void WorkerThreadDebugger::contextWillBeDestroyed(v8::Local<v8::Context> context
|
|
|
| void WorkerThreadDebugger::exceptionThrown(const String& errorMessage, std::unique_ptr<SourceLocation> location)
|
| {
|
| - if (m_muteConsoleCount)
|
| + if (m_workerThread->workerGlobalScope()->consoleMessageStorage()->isMuted())
|
| return;
|
| debugger()->exceptionThrown(workerContextGroupId, errorMessage, location->url(), location->lineNumber(), location->columnNumber(), location->cloneStackTrace(), location->scriptId());
|
| m_workerThread->workerReportingProxy().reportConsoleMessage(ConsoleMessage::create(JSMessageSource, ErrorMessageLevel, errorMessage, std::move(location)));
|
| }
|
|
|
| -void WorkerThreadDebugger::addConsoleMessage(ConsoleMessage* consoleMessage)
|
| -{
|
| - if (m_muteConsoleCount)
|
| - return;
|
| - debugger()->addConsoleMessage(
|
| - workerContextGroupId,
|
| - consoleMessage->source(),
|
| - consoleMessage->level(),
|
| - consoleMessage->message(),
|
| - consoleMessage->location()->url(),
|
| - consoleMessage->location()->lineNumber(),
|
| - consoleMessage->location()->columnNumber(),
|
| - consoleMessage->location()->cloneStackTrace(),
|
| - consoleMessage->location()->scriptId(),
|
| - IdentifiersFactory::requestId(consoleMessage->requestIdentifier()),
|
| - consoleMessage->workerId());
|
| -}
|
| -
|
| int WorkerThreadDebugger::contextGroupId()
|
| {
|
| return workerContextGroupId;
|
| @@ -123,14 +114,16 @@ void WorkerThreadDebugger::quitMessageLoopOnPause()
|
| m_workerThread->stopRunningDebuggerTasksOnPauseOnWorkerThread();
|
| }
|
|
|
| -void WorkerThreadDebugger::muteWarningsAndDeprecations()
|
| +void WorkerThreadDebugger::muteWarningsAndDeprecations(int contextGroupId)
|
| {
|
| - m_muteConsoleCount++;
|
| + DCHECK(contextGroupId == workerContextGroupId);
|
| + m_workerThread->workerGlobalScope()->consoleMessageStorage()->mute();
|
| }
|
|
|
| -void WorkerThreadDebugger::unmuteWarningsAndDeprecations()
|
| +void WorkerThreadDebugger::unmuteWarningsAndDeprecations(int contextGroupId)
|
| {
|
| - m_muteConsoleCount--;
|
| + DCHECK(contextGroupId == workerContextGroupId);
|
| + m_workerThread->workerGlobalScope()->consoleMessageStorage()->unmute();
|
| }
|
|
|
| bool WorkerThreadDebugger::callingContextCanAccessContext(v8::Local<v8::Context> calling, v8::Local<v8::Context> target)
|
|
|