From ed693ecae3a8aa3fddcb28e3a1fe4f8017ec12c8 Mon Sep 17 00:00:00 2001 From: "yangguo@chromium.org" Date: Wed, 2 Jul 2014 08:15:52 +0000 Subject: [PATCH] Postpone termination exceptions in debug scope. R=yurys@chromium.org BUG=v8:3408 LOG=Y Review URL: https://codereview.chromium.org/353393002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22144 ce2b1a6d-e550-0410-aec6-3dcde31c8c00 --- src/debug.cc | 9 ++++++--- src/debug.h | 1 + 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/debug.cc b/src/debug.cc index b19b47e..01412a1 100644 --- a/src/debug.cc +++ b/src/debug.cc @@ -3074,9 +3074,12 @@ void Debug::ProcessDebugMessages(bool debug_command_only) { } -DebugScope::DebugScope(Debug* debug) : debug_(debug), - prev_(debug->debugger_entry()), - save_(debug_->isolate_) { +DebugScope::DebugScope(Debug* debug) + : debug_(debug), + prev_(debug->debugger_entry()), + save_(debug_->isolate_), + no_termination_exceptons_(debug_->isolate_, + StackGuard::TERMINATE_EXECUTION) { // Link recursive debugger entry. debug_->thread_local_.current_debug_scope_ = this; diff --git a/src/debug.h b/src/debug.h index f5a19d1..480a65a 100644 --- a/src/debug.h +++ b/src/debug.h @@ -702,6 +702,7 @@ class DebugScope BASE_EMBEDDED { int break_id_; // Previous break id. bool failed_; // Did the debug context fail to load? SaveContext save_; // Saves previous context. + PostponeInterruptsScope no_termination_exceptons_; }; -- 2.7.4