| Index: src/runtime.cc
|
| ===================================================================
|
| --- src/runtime.cc (revision 9211)
|
| +++ src/runtime.cc (working copy)
|
| @@ -3885,6 +3885,17 @@
|
| if (proto->IsNull()) return *obj_value;
|
| js_object = Handle<JSObject>::cast(proto);
|
| }
|
| +
|
| + // Don't allow element properties to be redefined on objects with external
|
| + // array elements.
|
| + if (js_object->HasExternalArrayElements()) {
|
| + Handle<Object> args[2] = { js_object, name };
|
| + Handle<Object> error =
|
| + isolate->factory()->NewTypeError("redef_external_array_element",
|
| + HandleVector(args, 2));
|
| + return isolate->Throw(*error);
|
| + }
|
| +
|
| NormalizeElements(js_object);
|
| Handle<NumberDictionary> dictionary(js_object->element_dictionary());
|
| // Make sure that we never go back to fast case.
|
|
|