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 8cb5764968fea2bbc24e8f253ffe298853fcc0b6..998d3723caeacb1041aaa1248db6a38ecd76f85b 100644 |
--- a/src/inspector/v8-debugger-agent-impl.cc |
+++ b/src/inspector/v8-debugger-agent-impl.cc |
@@ -473,6 +473,7 @@ V8DebuggerAgentImpl::resolveBreakpoint(const String16& breakpointId, |
scriptIterator->second->endLine() < breakpoint.line_number) |
return nullptr; |
+ // Translate from protocol location to v8 location for the debugger. |
ScriptBreakpoint translatedBreakpoint = breakpoint; |
m_debugger->wasmTranslation()->TranslateProtocolLocationToWasmScriptLocation( |
&translatedBreakpoint.script_id, &translatedBreakpoint.line_number, |
@@ -484,6 +485,10 @@ V8DebuggerAgentImpl::resolveBreakpoint(const String16& breakpointId, |
translatedBreakpoint, &actualLineNumber, &actualColumnNumber); |
if (debuggerBreakpointId.isEmpty()) return nullptr; |
+ // Translate back from v8 location to protocol location for the return value. |
+ m_debugger->wasmTranslation()->TranslateWasmScriptLocationToProtocolLocation( |
+ &translatedBreakpoint.script_id, &actualLineNumber, &actualColumnNumber); |
+ |
m_serverBreakpoints[debuggerBreakpointId] = |
std::make_pair(breakpointId, source); |
CHECK(!breakpointId.isEmpty()); |