| Index: Source/core/inspector/InspectorDebuggerAgent.cpp
|
| diff --git a/Source/core/inspector/InspectorDebuggerAgent.cpp b/Source/core/inspector/InspectorDebuggerAgent.cpp
|
| index 1f52a8c241f5b807e0fe31553fd7153d65f92cb2..d957591f200ef255d02b31fa5e15389f501086f7 100644
|
| --- a/Source/core/inspector/InspectorDebuggerAgent.cpp
|
| +++ b/Source/core/inspector/InspectorDebuggerAgent.cpp
|
| @@ -928,7 +928,7 @@ void InspectorDebuggerAgent::setPauseOnExceptionsImpl(ErrorString* errorString,
|
| m_state->setLong(DebuggerAgentState::pauseOnExceptionsState, pauseState);
|
| }
|
|
|
| -void InspectorDebuggerAgent::evaluateOnCallFrame(ErrorString* errorString, const String& callFrameId, const String& expression, const String* const objectGroup, const bool* const includeCommandLineAPI, const bool* const doNotPauseOnExceptionsAndMuteConsole, const bool* const returnByValue, const bool* generatePreview, RefPtr<RemoteObject>& result, TypeBuilder::OptOutput<bool>* wasThrown)
|
| +void InspectorDebuggerAgent::evaluateOnCallFrame(ErrorString* errorString, const String& callFrameId, const String& expression, const String* const objectGroup, const bool* const includeCommandLineAPI, const bool* const doNotPauseOnExceptionsAndMuteConsole, const bool* const returnByValue, const bool* generatePreview, RefPtr<RemoteObject>& result, TypeBuilder::OptOutput<bool>* wasThrown, RefPtr<TypeBuilder::Debugger::ExceptionDetails>& exceptionDetails)
|
| {
|
| if (!isPaused() || m_currentCallStack.isEmpty()) {
|
| *errorString = "Attempt to access callframe when debugger is not on pause";
|
| @@ -957,8 +957,11 @@ void InspectorDebuggerAgent::evaluateOnCallFrame(ErrorString* errorString, const
|
| asyncCallStacks[i] = (*it)->callFrames();
|
| }
|
|
|
| - injectedScript.evaluateOnCallFrame(errorString, m_currentCallStack, asyncCallStacks, callFrameId, expression, objectGroup ? *objectGroup : "", includeCommandLineAPI ? *includeCommandLineAPI : false, returnByValue ? *returnByValue : false, generatePreview ? *generatePreview : false, &result, wasThrown);
|
| -
|
| + injectedScript.evaluateOnCallFrame(errorString, m_currentCallStack, asyncCallStacks, callFrameId, expression, objectGroup ? *objectGroup : "", includeCommandLineAPI ? *includeCommandLineAPI : false, returnByValue ? *returnByValue : false, generatePreview ? *generatePreview : false, &result, wasThrown, &exceptionDetails);
|
| + // V8 doesn't generate afterCompile event when it's in debugger therefore there is no content of evaluated scripts on frontend
|
| + // therefore contents of the stack does not provide necessary information
|
| + if (exceptionDetails)
|
| + exceptionDetails->setStackTrace(TypeBuilder::Array<TypeBuilder::Console::CallFrame>::create());
|
| if (doNotPauseOnExceptionsAndMuteConsole ? *doNotPauseOnExceptionsAndMuteConsole : false) {
|
| unmuteConsole();
|
| if (scriptDebugServer().pauseOnExceptionsState() != previousPauseOnExceptionsState)
|
|
|