aboutsummaryrefslogtreecommitdiffstats
path: root/sources/pyside2/PySide2/QtCore/typesystem_core_common.xml
diff options
context:
space:
mode:
Diffstat (limited to 'sources/pyside2/PySide2/QtCore/typesystem_core_common.xml')
-rw-r--r--sources/pyside2/PySide2/QtCore/typesystem_core_common.xml60
1 files changed, 37 insertions, 23 deletions
diff --git a/sources/pyside2/PySide2/QtCore/typesystem_core_common.xml b/sources/pyside2/PySide2/QtCore/typesystem_core_common.xml
index 144e16ffc..daa636f98 100644
--- a/sources/pyside2/PySide2/QtCore/typesystem_core_common.xml
+++ b/sources/pyside2/PySide2/QtCore/typesystem_core_common.xml
@@ -2177,29 +2177,41 @@
<inject-code class="target" position="end" file="../glue/qtcore.cpp" snippet="qlibraryinfo_build"/>
</modify-function>
</object-type>
- <object-type name="QMutexLocker" copyable="no">
- <!-- PYSIDE-1271: Creating locking capable objects inside sections that
- contain allow-thread, require the classes to also allow having threads.
- The lack of the option here, was generating a deadlock when running a
- QMutexLocker inside a QThread::run.
- The reason of having this change is due to the new way of handling the GIL
- in the Qt calls on the whole PySide2 module, that started on 5.14.2-->
- <modify-function signature="QMutexLocker(QBasicMutex*)" allow-thread="yes">
+ <namespace-type name="QtCoreHelper" visible="no">
+ <object-type name="QMutexLocker" copyable="no">
+ <!-- PYSIDE-1271: Creating locking capable objects inside sections that
+ contain allow-thread, require the classes to also allow having threads.
+ The lack of the option here, was generating a deadlock when running a
+ QMutexLocker inside a QThread::run.
+ The reason of having this change is due to the new way of handling the GIL
+ in the Qt calls on the whole PySide2 module, that started on 5.14.2-->
+ <modify-function signature="QMutexLocker(QMutex*)" allow-thread="yes">
<modify-argument index="1">
- <reference-count action="set" variable-name="mutex()const0"/>
+ <reference-count action="set" variable-name="mutex()const0"/>
</modify-argument>
- </modify-function>
- <modify-function signature="relock()" allow-thread="yes"/>
- <modify-function signature="mutex()const">
- <modify-argument index="return">
- <reference-count action="set"/>
- </modify-argument>
- </modify-function>
- <add-function signature="__enter__()"/>
- <add-function signature="__exit__(PyObject*,PyObject*,PyObject*)">
- <inject-code file="../glue/qtcore.cpp" snippet="unlock"/>
- </add-function>
- </object-type>
+ </modify-function>
+ <modify-function signature="QMutexLocker(QRecursiveMutex*)" allow-thread="yes">
+ <modify-argument index="1">
+ <reference-count action="set" variable-name="recursiveMutex()const0"/>
+ </modify-argument>
+ </modify-function>
+ <modify-function signature="relock()" allow-thread="yes"/>
+ <modify-function signature="mutex()const">
+ <modify-argument index="return">
+ <reference-count action="set"/>
+ </modify-argument>
+ </modify-function>
+ <modify-function signature="recursiveMutex()const">
+ <modify-argument index="return">
+ <reference-count action="set"/>
+ </modify-argument>
+ </modify-function>
+ <add-function signature="__enter__()"/>
+ <add-function signature="__exit__(PyObject*,PyObject*,PyObject*)">
+ <inject-code file="../glue/qtcore.cpp" snippet="unlock"/>
+ </add-function>
+ </object-type>
+ </namespace-type>
<!-- Qt5 addition -->
<object-type name="QBasicMutex">
@@ -2208,11 +2220,13 @@
</object-type>
<object-type name="QMutex">
- <enum-type name="RecursionMode"/>
<modify-function signature="lock()" allow-thread="yes"/>
<modify-function signature="tryLock(int)" allow-thread="yes"/>
</object-type>
- <object-type name="QRecursiveMutex" since="5.14"/>
+ <object-type name="QRecursiveMutex" since="5.14">
+ <modify-function signature="lock()" allow-thread="yes"/>
+ <modify-function signature="tryLock(int)" allow-thread="yes"/>
+ </object-type>
<object-type name="QRandomGenerator" since="5.10">
<modify-function signature="global()" rename="global_"/>
<modify-function signature="operator()()" remove="all"/>