Correctly lookup starting at the holder

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
This commit is contained in:
verwaest@chromium.org 2014-06-11 14:03:13 +00:00
parent 223e831acf
commit 15f719df65

View 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>());