qt5-wayland qt5-declarative rebuild
This commit is contained in:
@@ -269,7 +269,7 @@ index ee31cb38d9..187339169b 100644
|
||||
|
||||
bool QQmlData::hasBindingBit(int coreIndex) const
|
||||
diff --git a/src/qml/qml/qqmlengine.cpp b/src/qml/qml/qqmlengine.cpp
|
||||
index 852a673ebd..d6b2711c2d 100644
|
||||
index 852a673ebd..5f3367e4d2 100644
|
||||
--- a/src/qml/qml/qqmlengine.cpp
|
||||
+++ b/src/qml/qml/qqmlengine.cpp
|
||||
@@ -718,18 +718,15 @@ void QQmlPrivate::qdeclarativeelement_destructor(QObject *o)
|
||||
@@ -306,7 +306,38 @@ index 852a673ebd..d6b2711c2d 100644
|
||||
return;
|
||||
|
||||
auto objectThreadData = QObjectPrivate::get(object)->threadData.loadRelaxed();
|
||||
@@ -1835,49 +1835,73 @@ void QQmlData::releaseDeferredData()
|
||||
@@ -1588,17 +1588,22 @@ void qmlExecuteDeferred(QObject *object)
|
||||
{
|
||||
QQmlData *data = QQmlData::get(object);
|
||||
|
||||
- if (data && !data->deferredData.isEmpty() && !data->wasDeleted(object)) {
|
||||
- QQmlEnginePrivate *ep = QQmlEnginePrivate::get(data->context->engine);
|
||||
+ if (!data
|
||||
+ || !data->context
|
||||
+ || !data->context->engine
|
||||
+ || data->deferredData.isEmpty()
|
||||
+ || data->wasDeleted(object)) {
|
||||
+ return;
|
||||
+ }
|
||||
|
||||
- QQmlComponentPrivate::DeferredState state;
|
||||
- QQmlComponentPrivate::beginDeferred(ep, object, &state);
|
||||
+ QQmlEnginePrivate *ep = QQmlEnginePrivate::get(data->context->engine);
|
||||
+ QQmlComponentPrivate::DeferredState state;
|
||||
+ QQmlComponentPrivate::beginDeferred(ep, object, &state);
|
||||
|
||||
- // Release the reference for the deferral action (we still have one from construction)
|
||||
- data->releaseDeferredData();
|
||||
+ // Release the reference for the deferral action (we still have one from construction)
|
||||
+ data->releaseDeferredData();
|
||||
|
||||
- QQmlComponentPrivate::completeDeferred(ep, &state);
|
||||
- }
|
||||
+ QQmlComponentPrivate::completeDeferred(ep, &state);
|
||||
}
|
||||
|
||||
QQmlContext *qmlContext(const QObject *obj)
|
||||
@@ -1835,49 +1840,73 @@ void QQmlData::releaseDeferredData()
|
||||
|
||||
void QQmlData::addNotify(int index, QQmlNotifierEndpoint *endpoint)
|
||||
{
|
||||
@@ -406,7 +437,7 @@ index 852a673ebd..d6b2711c2d 100644
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1961,7 +1985,7 @@ void QQmlData::destroyed(QObject *object)
|
||||
@@ -1961,7 +1990,7 @@ void QQmlData::destroyed(QObject *object)
|
||||
guard->objectDestroyed(object);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user