diff options
author | Fabian Kosmale <fabian.kosmale@qt.io> | 2020-11-23 14:53:33 +0100 |
---|---|---|
committer | Fabian Kosmale <fabian.kosmale@qt.io> | 2020-12-02 12:54:52 +0100 |
commit | 7163d6b2a4b9c74ea0378067814b6bd8523b27f5 (patch) | |
tree | bcb6ded14fd76767f58391a29d12f62d1a46527a /src/qml | |
parent | e5f06d60245b75dd31daa2f212619236e6808cd3 (diff) |
Remove the pointer to the property cache in QObjectMethod
It's not being used anymore.
Original-patch-by: Lars Knoll <lars.knoll@qt.io>
Task-number: QTBUG-88765
Change-Id: Ieab1cba6c664c65d123d8f1ffd6db5878010f965
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Diffstat (limited to 'src/qml')
-rw-r--r-- | src/qml/jsruntime/qv4qobjectwrapper.cpp | 8 | ||||
-rw-r--r-- | src/qml/jsruntime/qv4qobjectwrapper_p.h | 11 |
2 files changed, 2 insertions, 17 deletions
diff --git a/src/qml/jsruntime/qv4qobjectwrapper.cpp b/src/qml/jsruntime/qv4qobjectwrapper.cpp index 02f9dee3d3..5d5165e7f9 100644 --- a/src/qml/jsruntime/qv4qobjectwrapper.cpp +++ b/src/qml/jsruntime/qv4qobjectwrapper.cpp @@ -2011,9 +2011,6 @@ ReturnedValue QObjectMethod::create(ExecutionContext *scope, QObject *object, in Scoped<QObjectMethod> method(valueScope, valueScope.engine->memoryManager->allocate<QObjectMethod>(scope)); method->d()->setObject(object); - if (QQmlData *ddata = QQmlData::get(object)) - method->d()->setPropertyCache(ddata->propertyCache); - method->d()->index = index; return method.asReturnedValue(); } @@ -2022,7 +2019,6 @@ ReturnedValue QObjectMethod::create(ExecutionContext *scope, Heap::QQmlValueType { Scope valueScope(scope); Scoped<QObjectMethod> method(valueScope, valueScope.engine->memoryManager->allocate<QObjectMethod>(scope)); - method->d()->setPropertyCache(valueType->propertyCache()); method->d()->index = index; method->d()->valueTypeWrapper.set(valueScope.engine, valueType); return method.asReturnedValue(); @@ -2035,8 +2031,8 @@ void Heap::QObjectMethod::init(QV4::ExecutionContext *scope) const QMetaObject *Heap::QObjectMethod::metaObject() { - if (propertyCache()) - return propertyCache()->createMetaObject(); + if (valueTypeWrapper) + return valueTypeWrapper->propertyCache()->createMetaObject(); return object()->metaObject(); } diff --git a/src/qml/jsruntime/qv4qobjectwrapper_p.h b/src/qml/jsruntime/qv4qobjectwrapper_p.h index 896de97c56..b5c3da311a 100644 --- a/src/qml/jsruntime/qv4qobjectwrapper_p.h +++ b/src/qml/jsruntime/qv4qobjectwrapper_p.h @@ -98,7 +98,6 @@ private: #define QObjectMethodMembers(class, Member) \ Member(class, Pointer, QQmlValueTypeWrapper *, valueTypeWrapper) \ Member(class, NoMark, QV4QPointer<QObject>, qObj) \ - Member(class, NoMark, QQmlPropertyCache *, _propertyCache) \ Member(class, NoMark, int, index) DECLARE_HEAP_OBJECT(QObjectMethod, FunctionObject) { @@ -113,20 +112,10 @@ DECLARE_HEAP_OBJECT(QObjectMethod, FunctionObject) { { if (methods != reinterpret_cast<QQmlPropertyData *>(&_singleMethod)) delete[] methods; - setPropertyCache(nullptr); qObj.destroy(); FunctionObject::destroy(); } - QQmlPropertyCache *propertyCache() const { return _propertyCache; } - void setPropertyCache(QQmlPropertyCache *c) { - if (c) - c->addref(); - if (_propertyCache) - _propertyCache->release(); - _propertyCache = c; - } - void ensureMethodsCache(); const QMetaObject *metaObject(); |