diff options
author | Lars Knoll <lars.knoll@digia.com> | 2014-01-27 14:58:52 +0100 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2014-02-07 10:44:00 +0100 |
commit | 39d7e330e64c2132828a040497a5b7326202b5b9 (patch) | |
tree | 7c5568b5ba0ab6fed316bb88d229e0496ad3c6fd /src/qml/qml/qqmlvmemetaobject.cpp | |
parent | 927a46b1af9728c770dabb82f0b2233600636d2a (diff) |
Make the Ref classes not template based
Move to a class hierarchy that mirrors the main classes. This will
allow moving functionality over into the Ref classes, as the current
Managed classes become mainly something that holds the data. This
is required to make objects movable by the GC.
Change-Id: I4ca88ab0e5d8c88c8dc56d51937990500a33e0d9
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Diffstat (limited to 'src/qml/qml/qqmlvmemetaobject.cpp')
-rw-r--r-- | src/qml/qml/qqmlvmemetaobject.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/qml/qml/qqmlvmemetaobject.cpp b/src/qml/qml/qqmlvmemetaobject.cpp index 48893c1b7f..f9cb9565b3 100644 --- a/src/qml/qml/qqmlvmemetaobject.cpp +++ b/src/qml/qml/qqmlvmemetaobject.cpp @@ -1086,7 +1086,8 @@ void QQmlVMEMetaObject::writeProperty(int id, const QVariant &value) // And, if the new value is a scarce resource, we need to ensure that it does not get // automatically released by the engine until no other references to it exist. QV4::ScopedValue newv(scope, QQmlEnginePrivate::get(ctxt->engine)->v8engine()->fromVariant(value)); - if (QV4::ManagedRef<QV4::VariantObject> v = newv) + QV4::VariantObjectRef v = newv; + if (!!v) v->addVmePropertyReference(); // Write the value and emit change signal as appropriate. |