Index: Source/core/inspector/V8DebuggerAgent.cpp |
diff --git a/Source/core/inspector/V8DebuggerAgent.cpp b/Source/core/inspector/V8DebuggerAgent.cpp |
index 2652558d9e73dd7606dfa3146965b6ecba7c9030..faa9eca3cd75d4d5b02fe758fc154513fb0d0a27 100644 |
--- a/Source/core/inspector/V8DebuggerAgent.cpp |
+++ b/Source/core/inspector/V8DebuggerAgent.cpp |
@@ -193,21 +193,6 @@ void V8DebuggerAgent::enable() |
m_client->debuggerAgentEnabled(); |
} |
-void V8DebuggerAgent::disable() |
-{ |
- m_state->setObject(DebuggerAgentState::javaScriptBreakpoints, JSONObject::create()); |
- m_state->setLong(DebuggerAgentState::pauseOnExceptionsState, V8Debugger::DontPauseOnExceptions); |
- m_state->setString(DebuggerAgentState::skipStackPattern, ""); |
- m_state->setBoolean(DebuggerAgentState::skipContentScripts, false); |
- m_state->setLong(DebuggerAgentState::asyncCallStackDepth, 0); |
- m_state->setBoolean(DebuggerAgentState::promiseTrackerEnabled, false); |
- |
- debugger().removeListener(m_contextGroupId); |
- m_client->debuggerAgentDisabled(); |
- clear(); |
- m_skipAllPauses = false; |
-} |
- |
bool V8DebuggerAgent::enabled() |
{ |
return m_state->getBoolean(DebuggerAgentState::debuggerEnabled); |
@@ -228,7 +213,35 @@ void V8DebuggerAgent::disable(ErrorString*) |
if (!enabled()) |
return; |
- disable(); |
+ m_state->setObject(DebuggerAgentState::javaScriptBreakpoints, JSONObject::create()); |
+ m_state->setLong(DebuggerAgentState::pauseOnExceptionsState, V8Debugger::DontPauseOnExceptions); |
+ m_state->setString(DebuggerAgentState::skipStackPattern, ""); |
+ m_state->setBoolean(DebuggerAgentState::skipContentScripts, false); |
+ m_state->setLong(DebuggerAgentState::asyncCallStackDepth, 0); |
+ m_state->setBoolean(DebuggerAgentState::promiseTrackerEnabled, false); |
+ m_state->setBoolean(DebuggerAgentState::promiseTrackerCaptureStacks, false); |
+ |
+ debugger().removeListener(m_contextGroupId); |
+ m_client->debuggerAgentDisabled(); |
+ m_pausedScriptState = nullptr; |
+ m_currentCallStack.Reset(); |
+ m_scripts.clear(); |
+ m_breakpointIdToDebuggerBreakpointIds.clear(); |
+ internalSetAsyncCallStackDepth(0); |
+ m_promiseTracker->setEnabled(false, false); |
+ m_continueToLocationBreakpointId = String(); |
+ clearBreakDetails(); |
+ m_scheduledDebuggerStep = NoStep; |
+ m_skipNextDebuggerStepOut = false; |
+ m_javaScriptPauseScheduled = false; |
+ m_steppingFromFramework = false; |
+ m_pausingOnNativeEvent = false; |
+ m_skippedStepFrameCount = 0; |
+ m_recursionLevelForStepFrame = 0; |
+ m_asyncOperationNotifications.clear(); |
+ m_compiledScripts.Clear(); |
+ clearStepIntoAsync(); |
+ m_skipAllPauses = false; |
m_state->setBoolean(DebuggerAgentState::debuggerEnabled, false); |
} |
@@ -282,7 +295,7 @@ void V8DebuggerAgent::restore() |
m_skipContentScripts = m_state->getBoolean(DebuggerAgentState::skipContentScripts); |
m_skipAllPauses = m_state->getBoolean(DebuggerAgentState::skipAllPauses); |
internalSetAsyncCallStackDepth(m_state->getLong(DebuggerAgentState::asyncCallStackDepth)); |
- promiseTracker().setEnabled(m_state->getBoolean(DebuggerAgentState::promiseTrackerEnabled), m_state->getBoolean(DebuggerAgentState::promiseTrackerCaptureStacks)); |
+ m_promiseTracker->setEnabled(m_state->getBoolean(DebuggerAgentState::promiseTrackerEnabled), m_state->getBoolean(DebuggerAgentState::promiseTrackerCaptureStacks)); |
} |
} |
@@ -748,14 +761,14 @@ void V8DebuggerAgent::didReceiveV8AsyncTaskEvent(v8::Local<v8::Context> context, |
bool V8DebuggerAgent::v8PromiseEventsEnabled() const |
{ |
- return promiseTracker().isEnabled(); |
+ return m_promiseTracker->isEnabled(); |
} |
void V8DebuggerAgent::didReceiveV8PromiseEvent(v8::Local<v8::Context> context, v8::Local<v8::Object> promise, v8::Local<v8::Value> parentPromise, int status) |
{ |
- ASSERT(promiseTracker().isEnabled()); |
+ ASSERT(m_promiseTracker->isEnabled()); |
ScriptState* scriptState = ScriptState::from(context); |
- promiseTracker().didReceiveV8PromiseEvent(scriptState, promise, parentPromise, status); |
+ m_promiseTracker->didReceiveV8PromiseEvent(scriptState, promise, parentPromise, status); |
} |
void V8DebuggerAgent::pause(ErrorString* errorString) |
@@ -1089,7 +1102,7 @@ void V8DebuggerAgent::enablePromiseTracker(ErrorString* errorString, const bool* |
return; |
m_state->setBoolean(DebuggerAgentState::promiseTrackerEnabled, true); |
m_state->setBoolean(DebuggerAgentState::promiseTrackerCaptureStacks, asBool(captureStacks)); |
- promiseTracker().setEnabled(true, asBool(captureStacks)); |
+ m_promiseTracker->setEnabled(true, asBool(captureStacks)); |
} |
void V8DebuggerAgent::disablePromiseTracker(ErrorString* errorString) |
@@ -1097,18 +1110,18 @@ void V8DebuggerAgent::disablePromiseTracker(ErrorString* errorString) |
if (!checkEnabled(errorString)) |
return; |
m_state->setBoolean(DebuggerAgentState::promiseTrackerEnabled, false); |
- promiseTracker().setEnabled(false, false); |
+ m_promiseTracker->setEnabled(false, false); |
} |
void V8DebuggerAgent::getPromiseById(ErrorString* errorString, int promiseId, const String* objectGroup, RefPtr<RemoteObject>& promise) |
{ |
if (!checkEnabled(errorString)) |
return; |
- if (!promiseTracker().isEnabled()) { |
+ if (!m_promiseTracker->isEnabled()) { |
*errorString = "Promise tracking is disabled"; |
return; |
} |
- ScriptValue value = promiseTracker().promiseById(promiseId); |
+ ScriptValue value = m_promiseTracker->promiseById(promiseId); |
if (value.isEmpty()) { |
*errorString = "Promise with specified ID not found."; |
return; |
@@ -1641,28 +1654,6 @@ void V8DebuggerAgent::breakProgram(InspectorFrontend::Debugger::Reason::Enum bre |
debugger().breakProgram(); |
} |
-void V8DebuggerAgent::clear() |
-{ |
- m_pausedScriptState = nullptr; |
- m_currentCallStack.Reset(); |
- m_scripts.clear(); |
- m_breakpointIdToDebuggerBreakpointIds.clear(); |
- internalSetAsyncCallStackDepth(0); |
- promiseTracker().clear(); |
- m_continueToLocationBreakpointId = String(); |
- clearBreakDetails(); |
- m_scheduledDebuggerStep = NoStep; |
- m_skipNextDebuggerStepOut = false; |
- m_javaScriptPauseScheduled = false; |
- m_steppingFromFramework = false; |
- m_pausingOnNativeEvent = false; |
- m_skippedStepFrameCount = 0; |
- m_recursionLevelForStepFrame = 0; |
- m_asyncOperationNotifications.clear(); |
- m_compiledScripts.Clear(); |
- clearStepIntoAsync(); |
-} |
- |
void V8DebuggerAgent::clearStepIntoAsync() |
{ |
m_startingStepIntoAsync = false; |
@@ -1703,7 +1694,7 @@ void V8DebuggerAgent::reset() |
m_scripts.clear(); |
m_breakpointIdToDebuggerBreakpointIds.clear(); |
resetAsyncCallTracker(); |
- promiseTracker().clear(); |
+ m_promiseTracker->clear(); |
if (m_frontend) |
m_frontend->globalObjectCleared(); |
} |