Index: src/inspector/v8-debugger-agent-impl.cc |
diff --git a/src/inspector/v8-debugger-agent-impl.cc b/src/inspector/v8-debugger-agent-impl.cc |
index 8c9e9054a2143706c066d249d13c66b42ca9d7fa..325d0a2a34b90eeda91062163e011abecfef25d5 100644 |
--- a/src/inspector/v8-debugger-agent-impl.cc |
+++ b/src/inspector/v8-debugger-agent-impl.cc |
@@ -355,9 +355,10 @@ Response V8DebuggerAgentImpl::getPossibleBreakpoints( |
std::unique_ptr<protocol::Array<protocol::Debugger::Location>>* locations) { |
String16 scriptId = start->getScriptId(); |
- if (start->getLineNumber() < 0 || start->getColumnNumber(0) < 0) |
+ if (start->getLineNumber() < 0 || start->getColumnNumber(0) < 0) { |
return Response::Error( |
"start.lineNumber and start.columnNumber should be >= 0"); |
+ } |
v8::DebugInterface::Location v8Start(start->getLineNumber(), |
start->getColumnNumber(0)); |
@@ -375,6 +376,9 @@ Response V8DebuggerAgentImpl::getPossibleBreakpoints( |
auto it = m_scripts.find(scriptId); |
if (it == m_scripts.end()) return Response::Error("Script not found"); |
+ v8::HandleScope handleScope(m_isolate); |
+ v8::Context::Scope scope(v8::DebugInterface::GetDebugContext(m_isolate)); |
+ |
std::vector<v8::DebugInterface::Location> v8Locations; |
if (!it->second->getPossibleBreakpoints(v8Start, v8End, &v8Locations)) |
return Response::InternalError(); |