| Index: src/execution.cc
|
| ===================================================================
|
| --- src/execution.cc (revision 2783)
|
| +++ src/execution.cc (working copy)
|
| @@ -156,9 +156,12 @@
|
| ASSERT(catcher.HasCaught());
|
| ASSERT(Top::has_pending_exception());
|
| ASSERT(Top::external_caught_exception());
|
| - bool is_bottom_call = HandleScopeImplementer::instance()->CallDepthIsZero();
|
| - Top::OptionalRescheduleException(is_bottom_call, true);
|
| - result = v8::Utils::OpenHandle(*catcher.Exception());
|
| + if (Top::pending_exception() == Heap::termination_exception()) {
|
| + result = Factory::termination_exception();
|
| + } else {
|
| + result = v8::Utils::OpenHandle(*catcher.Exception());
|
| + }
|
| + Top::OptionalRescheduleException(true);
|
| }
|
|
|
| ASSERT(!Top::has_pending_exception());
|
|
|