Reviewers: Toon Verwaest,

Message:
Committed patchset #4 manually as r19804 (presubmit successful).

Description:
fix bad access check check

[email protected]

BUG=

Committed: https://code.google.com/p/v8/source/detail?r=19804

Please review this at https://codereview.chromium.org/195163002/

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

Affected files (+3, -4 lines):
  M src/objects.cc
  A + test/mjsunit/regress/regress-crbug-351262.js


Index: src/objects.cc
diff --git a/src/objects.cc b/src/objects.cc
index cd86a43988d98e2f3cab15831d2e6144f28ae886..4d001b8052c61fe8c3b97921983e0cf217410792 100644
--- a/src/objects.cc
+++ b/src/objects.cc
@@ -5914,9 +5914,9 @@ bool JSReceiver::IsSimpleEnum() {
     JSObject* curr = JSObject::cast(o);
     int enum_length = curr->map()->EnumLength();
     if (enum_length == kInvalidEnumCacheSentinel) return false;
+    if (curr->IsAccessCheckNeeded()) return false;
     ASSERT(!curr->HasNamedInterceptor());
     ASSERT(!curr->HasIndexedInterceptor());
-    ASSERT(!curr->IsAccessCheckNeeded());
     if (curr->NumberOfEnumElements() > 0) return false;
     if (curr != this && enum_length != 0) return false;
   }
Index: test/mjsunit/regress/regress-crbug-351262.js
diff --git a/test/mjsunit/regress/regress-349870.js b/test/mjsunit/regress/regress-crbug-351262.js
similarity index 78%
copy from test/mjsunit/regress/regress-349870.js
copy to test/mjsunit/regress/regress-crbug-351262.js
index 72df05524bf1ccbcc8e4201512238e6f99e3fdea..a2f4eadc0de5c2bd7d27f6e78ff9940fce7b0f85 100644
--- a/test/mjsunit/regress/regress-349870.js
+++ b/test/mjsunit/regress/regress-crbug-351262.js
@@ -2,6 +2,5 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.

-var r = /x/;
-Object.freeze(r);
-r.compile("x");
+for (var x in this) {};
+JSON.stringify(this);


--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to