Index: src/isolate.h |
diff --git a/src/isolate.h b/src/isolate.h |
index a0aecd8b275bc96c307d0e75d6700e59bb4f8b6a..c0ea772d1fa0000015fcda22bd4ae15de5bbc7f5 100644 |
--- a/src/isolate.h |
+++ b/src/isolate.h |
@@ -124,6 +124,15 @@ typedef ZoneList<Handle<Object> > ZoneObjectList; |
} \ |
} while (false) |
+#define RETURN_HANDLE_IF_SCHEDULED_EXCEPTION(isolate, T) \ |
+ do { \ |
+ Isolate* __isolate__ = (isolate); \ |
+ if (__isolate__->has_scheduled_exception()) { \ |
+ __isolate__->PromoteScheduledException(); \ |
+ return Handle<T>::null(); \ |
+ } \ |
+ } while (false) |
+ |
#define RETURN_IF_EMPTY_HANDLE_VALUE(isolate, call, value) \ |
do { \ |
if ((call).is_null()) { \ |