diff options
| author | Simon Hausmann <simon.hausmann@digia.com> | 2013-08-08 12:52:56 +0200 |
|---|---|---|
| committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-08-08 15:35:18 +0200 |
| commit | 0c179baade8f4a57c0f9fe7b48367412e8a41f2a (patch) | |
| tree | 30c775eda2fcba23827bdfc7f5d4c042813b8a2e /src/qml/jsruntime/qv4objectproto.cpp | |
| parent | 5046e8898803ab3e83f4dae1260345fdba207a32 (diff) | |
Fix hasOwnProperty on various types wrapped in QML
* Change semantics of Object::query to not walk the prototype chain but let the
caller do that where needed (__hasProperty__)
* Re-implement query in various places
* Implement method_hasOwnProperty to fall back to query() if getOwnProperty failed
* Fix missing prototype initialization in some qml wrappers, as well as missing base
class calls to ::get()
Change-Id: Ic2a702fd5ff3be2ff3c8317a8a24f99940a9594f
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Diffstat (limited to 'src/qml/jsruntime/qv4objectproto.cpp')
| -rw-r--r-- | src/qml/jsruntime/qv4objectproto.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/qml/jsruntime/qv4objectproto.cpp b/src/qml/jsruntime/qv4objectproto.cpp index 462c9ca81e..fd4afa3a32 100644 --- a/src/qml/jsruntime/qv4objectproto.cpp +++ b/src/qml/jsruntime/qv4objectproto.cpp @@ -399,6 +399,8 @@ Value ObjectPrototype::method_hasOwnProperty(SimpleCallContext *ctx) String *P = ctx->argument(0).toString(ctx); Object *O = ctx->thisObject.toObject(ctx); bool r = O->__getOwnProperty__(P) != 0; + if (!r) + r = !O->query(P).isEmpty(); return Value::fromBoolean(r); } |
