| Index: src/ic.cc
|
| diff --git a/src/ic.cc b/src/ic.cc
|
| index f7d668f12046cee4b2c4c06f6e8de8f1506ef3ea..423a62195df670b1076edac9a63f76eed3eda4e6 100644
|
| --- a/src/ic.cc
|
| +++ b/src/ic.cc
|
| @@ -1813,11 +1813,11 @@ RUNTIME_FUNCTION(MaybeObject*, StoreIC_MissFromStubFailure) {
|
|
|
|
|
| RUNTIME_FUNCTION(MaybeObject*, StoreIC_ArrayLength) {
|
| - SealHandleScope shs(isolate);
|
| + HandleScope scope(isolate);
|
|
|
| ASSERT(args.length() == 2);
|
| - JSArray* receiver = JSArray::cast(args[0]);
|
| - Object* len = args[1];
|
| + Handle<JSArray> receiver = args.at<JSArray>(0);
|
| + Handle<Object> len = args.at<Object>(1);
|
|
|
| // The generated code should filter out non-Smis before we get here.
|
| ASSERT(len->IsSmi());
|
| @@ -1829,11 +1829,9 @@ RUNTIME_FUNCTION(MaybeObject*, StoreIC_ArrayLength) {
|
| ASSERT(debug_lookup.IsPropertyCallbacks() && !debug_lookup.IsReadOnly());
|
| #endif
|
|
|
| - Object* result;
|
| - MaybeObject* maybe_result = receiver->SetElementsLength(len);
|
| - if (!maybe_result->To(&result)) return maybe_result;
|
| -
|
| - return len;
|
| + RETURN_IF_EMPTY_HANDLE(isolate,
|
| + JSArray::SetElementsLength(receiver, len));
|
| + return *len;
|
| }
|
|
|
|
|
|
|