Index: src/ic.cc |
diff --git a/src/ic.cc b/src/ic.cc |
index bbfb2dd781283d5d03b43d3710401fa0e8779d05..a41366daf1e0dac081aba55d7fb8dc5e11e16e9b 100644 |
--- a/src/ic.cc |
+++ b/src/ic.cc |
@@ -211,6 +211,12 @@ static void LookupForRead(LookupIterator* it) { |
break; |
} |
case LookupIterator::ACCESS_CHECK: |
+ // PropertyHandlerCompiler::CheckPrototypes() knows how to emit |
+ // access checks for global proxies. |
+ if (it->GetHolder<JSObject>()->IsJSGlobalProxy() && |
+ it->HasAccess(v8::ACCESS_GET)) { |
+ break; |
+ } |
return; |
case LookupIterator::PROPERTY: |
if (it->HasProperty()) return; // Yay! |