| Index: src/api.cc
|
| diff --git a/src/api.cc b/src/api.cc
|
| index 724c8433b4d0ecc1760030baf15c8a617213e375..64928abb108c6e104feb440873cd5fc81c847b59 100644
|
| --- a/src/api.cc
|
| +++ b/src/api.cc
|
| @@ -1909,7 +1909,8 @@ v8::TryCatch::TryCatch()
|
| is_verbose_(false),
|
| can_continue_(true),
|
| capture_message_(true),
|
| - rethrow_(false) {
|
| + rethrow_(false),
|
| + has_terminated_(false) {
|
| isolate_->RegisterTryCatchHandler(this);
|
| }
|
|
|
| @@ -1937,6 +1938,11 @@ bool v8::TryCatch::CanContinue() const {
|
| }
|
|
|
|
|
| +bool v8::TryCatch::HasTerminated() const {
|
| + return has_terminated_;
|
| +}
|
| +
|
| +
|
| v8::Handle<v8::Value> v8::TryCatch::ReThrow() {
|
| if (!HasCaught()) return v8::Local<v8::Value>();
|
| rethrow_ = true;
|
| @@ -6116,6 +6122,12 @@ bool V8::IsExecutionTerminating(Isolate* isolate) {
|
| }
|
|
|
|
|
| +void V8::CancelTerminateExecution(Isolate* isolate) {
|
| + i::Isolate* i_isolate = reinterpret_cast<i::Isolate*>(isolate);
|
| + i_isolate->stack_guard()->CancelTerminateExecution();
|
| +}
|
| +
|
| +
|
| Isolate* Isolate::GetCurrent() {
|
| i::Isolate* isolate = i::Isolate::UncheckedCurrent();
|
| return reinterpret_cast<Isolate*>(isolate);
|
|
|