| Index: src/objects.cc
|
| ===================================================================
|
| --- src/objects.cc (revision 5701)
|
| +++ src/objects.cc (working copy)
|
| @@ -6451,7 +6451,7 @@
|
| // When we set the is_extensible flag to false we always force
|
| // the element into dictionary mode (and force them to stay there).
|
| if (!map()->is_extensible()) {
|
| - Handle<Object> number(Heap::NumberFromUint32(index));
|
| + Handle<Object> number(Factory::NewNumberFromUint(index));
|
| Handle<String> index_string(Factory::NumberToString(number));
|
| Handle<Object> args[1] = { index_string };
|
| return Top::Throw(*Factory::NewTypeError("object_not_extensible",
|
| @@ -8565,7 +8565,9 @@
|
| details = PropertyDetails(details.attributes(),
|
| details.type(),
|
| DetailsAt(entry).index());
|
| - SetEntry(entry, NumberDictionaryShape::AsObject(key), value, details);
|
| + Object* object_key = NumberDictionaryShape::AsObject(key);
|
| + if (object_key->IsFailure()) return object_key;
|
| + SetEntry(entry, object_key, value, details);
|
| return this;
|
| }
|
|
|
|
|