-
-
Notifications
You must be signed in to change notification settings - Fork 31.6k
Step out/Shift F11/Out debug command does not stop when exception is thrown inside a function #9175
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Comments
I can confirm the issue and it also happens with master. It works when you run It seems V8 clears the one-shot breakpoints that diff --git a/deps/v8/src/debug/debug.cc b/deps/v8/src/debug/debug.cc
index e046957..803fd4a 100644
--- a/deps/v8/src/debug/debug.cc
+++ b/deps/v8/src/debug/debug.cc
@@ -920,17 +920,17 @@ void Debug::PrepareStepInSuspendedGenerator() {
clear_suspended_generator();
}
void Debug::PrepareStepOnThrow() {
if (!is_active()) return;
if (last_step_action() == StepNone) return;
if (in_debug_scope()) return;
- ClearOneShot();
+ if (last_step_action() != StepOut) ClearOneShot();
// Iterate through the JavaScript stack looking for handlers.
JavaScriptFrameIterator it(isolate_);
while (!it.done()) {
JavaScriptFrame* frame = it.frame();
if (frame->LookupExceptionHandlerInTable(nullptr, nullptr) > 0) break;
it.Advance();
} cc @nodejs/v8-inspector - I know the old debugger is being subsumed by the V8 inspector. Is it still useful to send this upstream and if so, how should I approach regression tests? |
/cc @hashseed. |
Corresponding V8 bug: https://bugs.chromium.org/p/v8/issues/detail?id=5559 |
Original commit message: fix stepping out of across throwing. R=jgruber@chromium.org BUG=v8:5559 Review-Url: https://codereview.chromium.org/2445233004 Cr-Commit-Position: refs/heads/master@{nodejs#40549} Fixes: nodejs#9175
Original commit message: fix stepping out of across throwing. R=jgruber@chromium.org BUG=v8:5559 Review-Url: https://codereview.chromium.org/2445233004 Cr-Commit-Position: refs/heads/master@{nodejs#40549} Fixes: nodejs#9175
Merge CL for 5.5 here: https://codereview.chromium.org/2621883003. Will land it upstream once approved. |
Merged as 5.5.372.39 upstream. |
Original commit message: fix stepping out of across throwing. R=jgruber@chromium.org BUG=v8:5559 Review-Url: https://codereview.chromium.org/2445233004 Cr-Commit-Position: refs/heads/master@{#40549} PR-URL: #10689 Fixes: #9175 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com> Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
Original commit message: fix stepping out of across throwing. R=jgruber@chromium.org BUG=v8:5559 Review-Url: https://codereview.chromium.org/2445233004 Cr-Commit-Position: refs/heads/master@{#40549} PR-URL: #10688 Fixes: #9175 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com>
Original commit message: fix stepping out of across throwing. R=jgruber@chromium.org BUG=v8:5559 Review-Url: https://codereview.chromium.org/2445233004 Cr-Commit-Position: refs/heads/master@{#40549} PR-URL: #10689 Fixes: #9175 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com> Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
Original commit message: fix stepping out of across throwing. R=jgruber@chromium.org BUG=v8:5559 Review-Url: https://codereview.chromium.org/2445233004 Cr-Commit-Position: refs/heads/master@{#40549} PR-URL: #10689 Fixes: #9175 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com> Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
Closing, fixed and released. |
Version: v6.8.1
Platform: Windows 10 64 bit
When i am inside the exception_function in the debugger and execute the out function, it does not stop any more. If i do single step or step over all the way then it works fine.
The text was updated successfully, but these errors were encountered: