Index: src/runtime.cc |
diff --git a/src/runtime.cc b/src/runtime.cc |
index 62d044e828dfedf1723ac6e12e581771014d3a42..ff55fab8c95f51359464eb2e80f05ab24c63b792 100644 |
--- a/src/runtime.cc |
+++ b/src/runtime.cc |
@@ -11229,7 +11229,9 @@ class ScopeIterator { |
// Find the break point where execution has stopped. |
BreakLocationIterator break_location_iterator(debug_info, |
ALL_BREAK_LOCATIONS); |
- break_location_iterator.FindBreakLocationFromAddress(frame->pc()); |
+ // pc points to the instruction after the current one, possibly a break |
+ // location as well. So the "- 1" to exclude it from the search. |
+ break_location_iterator.FindBreakLocationFromAddress(frame->pc() - 1); |
if (break_location_iterator.IsExit()) { |
// We are within the return sequence. At the momemt it is not possible to |
// get a source position which is consistent with the current scope chain. |