Index: src/top.cc |
=================================================================== |
--- src/top.cc (revision 570) |
+++ src/top.cc (working copy) |
@@ -101,7 +101,7 @@ |
clear_pending_exception(); |
clear_scheduled_exception(); |
thread_local_.save_context_ = NULL; |
- thread_local_.catcher_ = NULL; |
+ thread_local_.pending_external_caught_exception_ = false; |
} |
@@ -607,7 +607,7 @@ |
Failure* Top::ReThrow(Object* exception, MessageLocation* location) { |
- // Set the exception beeing re-thrown. |
+ // Set the exception being re-thrown. |
set_pending_exception(exception); |
return Failure::Exception(); |
} |
@@ -789,9 +789,8 @@ |
// If the exception is caught externally, we store it in the |
// try/catch handler. The C code can find it later and process it if |
// necessary. |
- thread_local_.catcher_ = NULL; |
+ thread_local_.pending_external_caught_exception_ = is_caught_externally; |
if (is_caught_externally) { |
- thread_local_.catcher_ = thread_local_.try_catch_handler_; |
thread_local_.try_catch_handler_->exception_ = |
reinterpret_cast<void*>(*exception_handle); |
if (!message_obj.is_null()) { |