Index: src/d8.cc |
diff --git a/src/d8.cc b/src/d8.cc |
index 8233f861ea46c85dc344e83e61c4539a4fac5694..83e2fc50d5d43db6290b9e7808313d6806ebe97a 100644 |
--- a/src/d8.cc |
+++ b/src/d8.cc |
@@ -532,8 +532,9 @@ Handle<Value> Shell::CreateExternalArray(const Arguments& args, |
if (args[0]->IsObject() && |
args[0]->ToObject()->Has(Symbols::length(isolate))) { |
// Construct from array. |
- length = convertToUint( |
- args[0]->ToObject()->Get(Symbols::length(isolate)), &try_catch); |
+ Local<Value> value = args[0]->ToObject()->Get(Symbols::length(isolate)); |
+ if (try_catch.HasCaught()) return try_catch.ReThrow(); |
+ length = convertToUint(value, &try_catch); |
if (try_catch.HasCaught()) return try_catch.ReThrow(); |
init_from_array = true; |
} else { |