Index: src/objects.cc |
diff --git a/src/objects.cc b/src/objects.cc |
index 94bc4271d873093a9385263ddaa36d051de0a075..261b385359d27ace99725e3ecac2892d293128ea 100644 |
--- a/src/objects.cc |
+++ b/src/objects.cc |
@@ -4218,9 +4218,12 @@ Handle<Object> JSObject::SetLocalPropertyIgnoreAttributes( |
// Check for accessor in prototype chain removed here in clone. |
if (!lookup.IsFound()) { |
+ object->map()->LookupTransition(*object, *name, &lookup); |
+ TransitionFlag flag = lookup.IsFound() |
+ ? OMIT_TRANSITION : INSERT_TRANSITION; |
// Neither properties nor transitions found. |
return AddProperty(object, name, value, attributes, kNonStrictMode, |
- MAY_BE_STORE_FROM_KEYED, extensibility_check, value_type, mode); |
+ MAY_BE_STORE_FROM_KEYED, extensibility_check, value_type, mode, flag); |
} |
Handle<Object> old_value = isolate->factory()->the_hole_value(); |