Don't perform access checks for internally used properties
authorverwaest <verwaest@chromium.org>
Thu, 26 Feb 2015 12:56:07 +0000 (04:56 -0800)
committerCommit bot <commit-bot@chromium.org>
Thu, 26 Feb 2015 12:56:18 +0000 (12:56 +0000)
BUG=
TBR=dcarney@chromium.org

Review URL: https://codereview.chromium.org/956283003

Cr-Commit-Position: refs/heads/master@{#26878}

src/lookup-inl.h

index ffc02e7..50f4b0f 100644 (file)
@@ -38,7 +38,10 @@ LookupIterator::State LookupIterator::LookupInHolder(Map* map,
   switch (state_) {
     case NOT_FOUND:
       if (map->IsJSProxyMap()) return JSPROXY;
-      if (map->is_access_check_needed()) return ACCESS_CHECK;
+      if (map->is_access_check_needed() &&
+          !isolate_->IsInternallyUsedPropertyName(name_)) {
+        return ACCESS_CHECK;
+      }
     // Fall through.
     case ACCESS_CHECK:
       if (check_interceptor() && map->has_named_interceptor()) {