| Index: src/execution.cc
|
| ===================================================================
|
| --- src/execution.cc (revision 7006)
|
| +++ src/execution.cc (working copy)
|
| @@ -131,6 +131,11 @@
|
| ASSERT(*has_pending_exception == Isolate::Current()->has_pending_exception());
|
| if (*has_pending_exception) {
|
| isolate->ReportPendingMessages();
|
| + if (isolate->pending_exception() == Failure::OutOfMemoryException()) {
|
| + if (!isolate->handle_scope_implementer()->ignore_out_of_memory()) {
|
| + V8::FatalProcessOutOfMemory("JS", true);
|
| + }
|
| + }
|
| return Handle<Object>();
|
| } else {
|
| isolate->clear_pending_message();
|
| @@ -425,6 +430,7 @@
|
| if (real_climit_ == kIllegalLimit) {
|
| // Takes the address of the limit variable in order to find out where
|
| // the top of stack is right now.
|
| + const uintptr_t kLimitSize = FLAG_stack_size * KB;
|
| uintptr_t limit = reinterpret_cast<uintptr_t>(&limit) - kLimitSize;
|
| ASSERT(reinterpret_cast<uintptr_t>(&limit) > kLimitSize);
|
| real_jslimit_ = SimulatorStack::JsLimitFromCLimit(limit);
|
|
|