Correctly lookup starting at the holder
authorverwaest@chromium.org <verwaest@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Wed, 11 Jun 2014 14:03:13 +0000 (14:03 +0000)
committerverwaest@chromium.org <verwaest@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Wed, 11 Jun 2014 14:03:13 +0000 (14:03 +0000)
BUG=
R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21771 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

src/api.cc

index 91c2856..cc9cd3a 100644 (file)
@@ -3518,7 +3518,9 @@ static Local<Value> GetPropertyByLookup(i::Isolate* isolate,
   // If the property being looked up is a callback, it can throw
   // an exception.
   EXCEPTION_PREAMBLE(isolate);
-  i::LookupIterator it(receiver, name);
+  i::LookupIterator it(
+      receiver, name, i::Handle<i::JSReceiver>(lookup->holder(), isolate),
+      i::LookupIterator::SKIP_INTERCEPTOR);
   i::Handle<i::Object> result;
   has_pending_exception = !i::Object::GetProperty(&it).ToHandle(&result);
   EXCEPTION_BAILOUT_CHECK(isolate, Local<Value>());