Changeset 47780 in webkit for trunk/JavaScriptCore/runtime/JSObject.cpp
- Timestamp:
- Aug 26, 2009, 9:52:15 AM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/runtime/JSObject.cpp
r47267 r47780 31 31 #include "NativeErrorConstructor.h" 32 32 #include "ObjectPrototype.h" 33 #include "PropertyDescriptor.h" 33 34 #include "PropertyNameArray.h" 34 35 #include "Lookup.h" … … 505 506 } 506 507 508 bool JSObject::getOwnPropertyDescriptor(ExecState*, const Identifier& propertyName, PropertyDescriptor& descriptor) 509 { 510 unsigned attributes = 0; 511 JSCell* cell = 0; 512 size_t offset = m_structure->get(propertyName, attributes, cell); 513 if (offset == WTF::notFound) 514 return false; 515 descriptor.setDescriptor(getDirectOffset(offset), attributes); 516 return true; 517 } 518 519 bool JSObject::getPropertyDescriptor(ExecState* exec, const Identifier& propertyName, PropertyDescriptor& descriptor) 520 { 521 JSObject* object = this; 522 while (true) { 523 if (object->getOwnPropertyDescriptor(exec, propertyName, descriptor)) 524 return true; 525 JSValue prototype = object->prototype(); 526 if (!prototype.isObject()) 527 return false; 528 object = asObject(prototype); 529 } 530 } 507 531 } // namespace JSC
Note:
See TracChangeset
for help on using the changeset viewer.