aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexandru Croitor <alexandru.croitor@qt.io>2016-12-22 15:44:42 +0100
committerAlexandru Croitor <alexandru.croitor@qt.io>2016-12-22 14:58:21 +0000
commit5588986a32637588e37803847af71ffeabf3946b (patch)
treeb784893c410f2a627a850eb03a4a06d4ee5d57d3
parent87d28b2fabbe06568bf323db2d7b5ea12be9e0ce (diff)
Stop shiboken crash due to incorrect interpretation of float[][] types
The C++ signature of the type is incorrectly interpreted as Array, which causes shiboken to crash on Linux (not on macOS). Temporarily remove the offending class from the typesystem, until the generator is fixed. Change-Id: I9fb23156cd57a7d8f0bc683e928cf8c3736768f7 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
-rw-r--r--PySide2/QtGui/CMakeLists.txt2
-rw-r--r--PySide2/QtGui/typesystem_gui_common.xml5
2 files changed, 6 insertions, 1 deletions
diff --git a/PySide2/QtGui/CMakeLists.txt b/PySide2/QtGui/CMakeLists.txt
index e4f4e46e..490db0ad 100644
--- a/PySide2/QtGui/CMakeLists.txt
+++ b/PySide2/QtGui/CMakeLists.txt
@@ -102,7 +102,7 @@ ${QtGui_GEN_DIR}/qaccessible_state_wrapper.cpp
${QtGui_GEN_DIR}/qaccessibleinterface_wrapper.cpp
${QtGui_GEN_DIR}/qscreen_wrapper.cpp
${QtGui_GEN_DIR}/qopenglshader_wrapper.cpp
-${QtGui_GEN_DIR}/qopenglshaderprogram_wrapper.cpp
+#${QtGui_GEN_DIR}/qopenglshaderprogram_wrapper.cpp
${QtGui_GEN_DIR}/qopenglframebufferobject_wrapper.cpp
${QtGui_GEN_DIR}/qsurface_wrapper.cpp
${QtGui_GEN_DIR}/qsurfaceformat_wrapper.cpp
diff --git a/PySide2/QtGui/typesystem_gui_common.xml b/PySide2/QtGui/typesystem_gui_common.xml
index b7ff59a6..5a670a4d 100644
--- a/PySide2/QtGui/typesystem_gui_common.xml
+++ b/PySide2/QtGui/typesystem_gui_common.xml
@@ -3250,7 +3250,12 @@
<object-type name="QOpenGLShader" >
<enum-type name="ShaderTypeBit" flags="ShaderType" />
</object-type>
+ <!-- Temporarily disable type, because it causes segfault on Linux due to incorrect parsing
+ of the void setUniformValue(const char *name, const GLfloat value[2][2]); method.
+ The float[][] ends up with an "Array" cpp signature, which obviously can't be found in the
+ typesystem.
<object-type name="QOpenGLShaderProgram" />
+ -->
<object-type name="QScreen" />
</typesystem>