diff options
author | Bill King <bking@trolltech.com> | 2010-01-12 02:45:18 (GMT) |
---|---|---|
committer | Bill King <bking@trolltech.com> | 2010-01-12 02:45:18 (GMT) |
commit | 82e9af930bea96710d7df87f03d3f4f1a175dbd3 (patch) | |
tree | 98f789486ad1488fb96b142e0273d86423563ae2 /src/3rdparty/javascriptcore | |
parent | 2e5f0b28e9eebd372bed923e8e41e805918647b0 (diff) | |
parent | 8d76de98d93421395306941e59d136f1e7395d15 (diff) | |
download | Qt-82e9af930bea96710d7df87f03d3f4f1a175dbd3.zip Qt-82e9af930bea96710d7df87f03d3f4f1a175dbd3.tar.gz Qt-82e9af930bea96710d7df87f03d3f4f1a175dbd3.tar.bz2 |
Merge branch '4.6' of git@scm.dev.nokia.troll.no:qt/qt-sql-team into 4.6
Diffstat (limited to 'src/3rdparty/javascriptcore')
-rw-r--r-- | src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSObject.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSObject.cpp b/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSObject.cpp index d7f5344..01f74ac 100644 --- a/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSObject.cpp +++ b/src/3rdparty/javascriptcore/JavaScriptCore/runtime/JSObject.cpp @@ -115,9 +115,17 @@ void JSObject::put(ExecState* exec, const Identifier& propertyName, JSValue valu return; for (JSObject* obj = this; ; obj = asObject(prototype)) { +#ifdef QT_BUILD_SCRIPT_LIB + PropertyDescriptor descriptor; + if (obj->getPropertyDescriptor(exec, propertyName, descriptor)) { + JSObject* setterFunc; + if ((descriptor.isAccessorDescriptor() && ((setterFunc = asObject(descriptor.setter())), true)) + || (descriptor.value().isGetterSetter() && ((setterFunc = asGetterSetter(descriptor.value())->setter()), true))) { +#else if (JSValue gs = obj->getDirect(propertyName)) { if (gs.isGetterSetter()) { - JSObject* setterFunc = asGetterSetter(gs)->setter(); + JSObject* setterFunc = asGetterSetter(gs)->setter(); +#endif if (!setterFunc) { throwSetterError(exec); return; |