aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/qml/qqmlvaluetypewrapper.cpp
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@digia.com>2013-05-30 18:56:47 +0200
committerSimon Hausmann <simon.hausmann@digia.com>2013-05-30 20:55:19 +0200
commit07c7c419cc2231112ddb39b11c709bf3843ace6d (patch)
tree09582b2023e84d8b4c8ff958dd5bc01fb09ea651 /src/qml/qml/qqmlvaluetypewrapper.cpp
parentacde568e10e3d60e02443762540461f35879fb77 (diff)
Fix all autotests related to value types
Fix 3 bugs in the new implementation, and adjust two expected error messages in the auto test. Change-Id: Ic3c08e54f9babc7e4779d67829e36f3ff805e127 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Diffstat (limited to 'src/qml/qml/qqmlvaluetypewrapper.cpp')
-rw-r--r--src/qml/qml/qqmlvaluetypewrapper.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/qml/qml/qqmlvaluetypewrapper.cpp b/src/qml/qml/qqmlvaluetypewrapper.cpp
index 36b9994660..31c95e6a53 100644
--- a/src/qml/qml/qqmlvaluetypewrapper.cpp
+++ b/src/qml/qml/qqmlvaluetypewrapper.cpp
@@ -136,7 +136,7 @@ void QmlValueTypeWrapper::initProto(ExecutionEngine *v4)
return;
Object *o = v4->newObject();
- o->defineDefaultProperty(v4, QStringLiteral("toString"), method_toString);
+ o->defineDefaultProperty(v4, QStringLiteral("toString"), method_toString, 1);
proto = Value::fromObject(o);
}
@@ -146,6 +146,7 @@ Value QmlValueTypeWrapper::create(QV8Engine *v8, QObject *object, int property,
initProto(v4);
QmlValueTypeReference *r = new (v4->memoryManager) QmlValueTypeReference(v8);
+ r->externalComparison = true;
r->prototype = proto.value().objectValue();
r->type = type; r->object = object; r->property = property;
return Value::fromObject(r);
@@ -157,6 +158,7 @@ Value QmlValueTypeWrapper::create(QV8Engine *v8, const QVariant &value, QQmlValu
initProto(v4);
QmlValueTypeCopy *r = new (v4->memoryManager) QmlValueTypeCopy(v8);
+ r->externalComparison = true;
r->prototype = proto.value().objectValue();
r->type = type; r->value = value;
return Value::fromObject(r);
@@ -274,7 +276,7 @@ Value QmlValueTypeWrapper::get(Managed *m, ExecutionContext *ctx, String *name,
}
if (!result)
- return Value::undefinedValue();
+ return Object::get(m, ctx, name, hasProperty);
if (result->isFunction()) {
// calling a Q_INVOKABLE function of a value type