| Index: Source/core/inspector/InspectorDebuggerAgent.cpp
|
| diff --git a/Source/core/inspector/InspectorDebuggerAgent.cpp b/Source/core/inspector/InspectorDebuggerAgent.cpp
|
| index 539bf174ab1259cda34736595d6d261e2b318981..44df24e310379c621a0dedf85e9387ccf0cb7522 100644
|
| --- a/Source/core/inspector/InspectorDebuggerAgent.cpp
|
| +++ b/Source/core/inspector/InspectorDebuggerAgent.cpp
|
| @@ -463,19 +463,21 @@ ScriptDebugListener::SkipPauseRequest InspectorDebuggerAgent::shouldSkipExceptio
|
| {
|
| if (m_skipAllPauses)
|
| return ScriptDebugListener::Continue;
|
| + if (!topFrame)
|
| + return ScriptDebugListener::NoSkip;
|
|
|
| String topFrameScriptUrl = scriptURL(topFrame.get());
|
| if (m_cachedSkipStackRegExp && !topFrameScriptUrl.isEmpty() && m_cachedSkipStackRegExp->match(topFrameScriptUrl) != -1)
|
| return ScriptDebugListener::Continue;
|
|
|
| - // Prepare top frame parameters;
|
| - int topFrameLineNumber = topFrame->line();
|
| - int topFrameColumnNumber = topFrame->column();
|
| -
|
| // Match against breakpoints.
|
| if (topFrameScriptUrl.isEmpty())
|
| return ScriptDebugListener::NoSkip;
|
|
|
| + // Prepare top frame parameters.
|
| + int topFrameLineNumber = topFrame->line();
|
| + int topFrameColumnNumber = topFrame->column();
|
| +
|
| RefPtr<JSONObject> breakpointsCookie = m_state->getObject(DebuggerAgentState::javaScriptBreakpoints);
|
| for (JSONObject::iterator it = breakpointsCookie->begin(); it != breakpointsCookie->end(); ++it) {
|
| RefPtr<JSONObject> breakpointObject = it->value->asObject();
|
| @@ -512,6 +514,8 @@ ScriptDebugListener::SkipPauseRequest InspectorDebuggerAgent::shouldSkipBreakpoi
|
| {
|
| if (m_skipAllPauses)
|
| return ScriptDebugListener::Continue;
|
| + if (!topFrame)
|
| + return ScriptDebugListener::NoSkip;
|
| return ScriptDebugListener::NoSkip;
|
| }
|
|
|
| @@ -519,6 +523,8 @@ ScriptDebugListener::SkipPauseRequest InspectorDebuggerAgent::shouldSkipStepPaus
|
| {
|
| if (m_skipAllPauses)
|
| return ScriptDebugListener::Continue;
|
| + if (!topFrame)
|
| + return ScriptDebugListener::NoSkip;
|
|
|
| if (m_cachedSkipStackRegExp) {
|
| String scriptUrl = scriptURL(topFrame.get());
|
| @@ -1025,6 +1031,8 @@ bool InspectorDebuggerAgent::canBreakProgram()
|
|
|
| void InspectorDebuggerAgent::breakProgram(InspectorFrontend::Debugger::Reason::Enum breakReason, PassRefPtr<JSONObject> data)
|
| {
|
| + if (m_skipAllPauses)
|
| + return;
|
| m_breakReason = breakReason;
|
| m_breakAuxData = data;
|
| scriptDebugServer().breakProgram();
|
|
|