aboutsummaryrefslogtreecommitdiffstats
path: root/sources
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2021-10-07 15:24:45 +0200
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2021-10-07 21:24:13 +0200
commitb8dadf54c3736b52a770d7715c8320a4dd016427 (patch)
tree20b677fcc750e42ad1d22cdd830df1fa48ad3186 /sources
parent598928f4aa76cc5eeca7ca7a7df82b3fbcdff769 (diff)
PySide6: Fix hang in QQmlApplicationEngine functions with message handler
Add allow-thread. Pick-to: 6.2 5.15 Fixes: PYSIDE-1681 Change-Id: I624979c5845a3366bcd9d7827ff2c77438ec54f3 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
Diffstat (limited to 'sources')
-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 58e5d3a60..4ecc0783c 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"/>