Reviewers: Jakob,

Description:
Add undefined check for default Array map in ArrayCodeGenericCommon


[email protected]
BUG=
TEST=


Please review this at https://chromiumcodereview.appspot.com/9290064/

SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge

Affected files:
  M src/builtins.cc


Index: src/builtins.cc
diff --git a/src/builtins.cc b/src/builtins.cc
index 4bb451cadedf6c8a0f9274e60b07610908697911..12c4c74918ca067f011d38a48b56d0fc72892443 100644
--- a/src/builtins.cc
+++ b/src/builtins.cc
@@ -198,8 +198,9 @@ static MaybeObject* ArrayCodeGenericCommon(Arguments* args,
     array->set_length(Smi::FromInt(0));
     array->set_elements(heap->empty_fixed_array());
     if (!FLAG_smi_only_arrays) {
-      if (array->GetElementsKind() == FAST_SMI_ONLY_ELEMENTS) {
-        Context* global_context = isolate->context()->global_context();
+      Context* global_context = isolate->context()->global_context();
+      if (array->GetElementsKind() == FAST_SMI_ONLY_ELEMENTS &&
+          !global_context->object_js_array_map()->IsUndefined()) {
         array->set_map(Map::cast(global_context->object_js_array_map()));
       }
     }


--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to