Reviewers: Sven Panne,
Message:
Our objects.h type hierarchy FTW. :)
Description:
Fix problem with NULL handle in r13367.
[email protected]
BUG=chromium:169723
Please review this at https://codereview.chromium.org/11881020/
SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge
Affected files:
M src/runtime.cc
Index: src/runtime.cc
diff --git a/src/runtime.cc b/src/runtime.cc
index
6a460e2412094dc2ec1fc5b7c2a02f38998b7f56..dbd777e22b84beea961331258f7738f721523eaf
100644
--- a/src/runtime.cc
+++ b/src/runtime.cc
@@ -1098,14 +1098,15 @@ static MaybeObject* GetOwnProperty(Isolate* isolate,
PropertyAttributes attrs = obj->GetLocalPropertyAttribute(*name);
if (attrs == ABSENT) return heap->undefined_value();
- Handle<AccessorPair> accessors(obj->GetLocalPropertyAccessorPair(*name));
+ AccessorPair* raw_accessors = obj->GetLocalPropertyAccessorPair(*name);
+ Handle<AccessorPair> accessors(raw_accessors, isolate);
Handle<FixedArray> elms =
isolate->factory()->NewFixedArray(DESCRIPTOR_SIZE);
elms->set(ENUMERABLE_INDEX, heap->ToBoolean((attrs & DONT_ENUM) == 0));
elms->set(CONFIGURABLE_INDEX, heap->ToBoolean((attrs & DONT_DELETE) ==
0));
- elms->set(IS_ACCESSOR_INDEX, heap->ToBoolean(!accessors.is_null()));
+ elms->set(IS_ACCESSOR_INDEX, heap->ToBoolean(raw_accessors != NULL));
- if (accessors.is_null()) {
+ if (raw_accessors == NULL) {
elms->set(WRITABLE_INDEX, heap->ToBoolean((attrs & READ_ONLY) == 0));
// GetProperty does access check.
Handle<Object> value = GetProperty(obj, name);
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev