aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2021-10-07 15:24:45 +0200
committerQt Cherry-pick Bot <cherrypick_bot@qt-project.org>2021-10-07 22:48:26 +0000
commitb2b0206844779702320c499f46277c56765a0a9e (patch)
tree8c0378c8f6ec236bdcbbd0c9d171c1b70e554faf
parentd9ad45f67fd8f64b347ec3d516f70d007fff1d34 (diff)
PySide6: Fix hang in QQmlApplicationEngine functions with message handler
Add allow-thread. Fixes: PYSIDE-1681 Change-Id: I624979c5845a3366bcd9d7827ff2c77438ec54f3 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit b8dadf54c3736b52a770d7715c8320a4dd016427) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r--sources/pyside6/PySide6/QtQml/typesystem_qml.xml7
1 files changed, 6 insertions, 1 deletions
diff --git a/sources/pyside6/PySide6/QtQml/typesystem_qml.xml b/sources/pyside6/PySide6/QtQml/typesystem_qml.xml
index 9a60eb84b..bd6b2b41d 100644
--- a/sources/pyside6/PySide6/QtQml/typesystem_qml.xml
+++ b/sources/pyside6/PySide6/QtQml/typesystem_qml.xml
@@ -156,10 +156,15 @@
<enum-type name="DataType"/>
</object-type>
<object-type name="QQmlApplicationEngine">
- <modify-function signature="load(const QString &amp;)">
+ <!-- PYSIDE-1681: QQmlApplicationEngine constructor, load() and similar need
+ allow-thread in case there is a message handler installed
+ (qInstallMessageHandler) -->
+ <modify-function signature="^QQmlApplicationEngine\(.*\)$" allow-thread="yes"/>
+ <modify-function signature="load(const QString &amp;)" allow-thread="yes">
<modify-argument index="1"><replace-type modified-type="PyPathLike"/></modify-argument>
<inject-code class="target" position="beginning" file="../glue/qtcore.cpp" snippet="qfile-path-1"/>
</modify-function>
+ <modify-function signature="load(const QUrl &amp;)" allow-thread="yes"/>
</object-type>
<object-type name="QQmlComponent">
<enum-type name="CompilationMode"/>