aboutsummaryrefslogtreecommitdiffstats
path: root/PySide
diff options
context:
space:
mode:
authorRenato Filho <renato.filho@openbossa.org>2011-07-28 11:15:26 -0300
committerHugo Parente Lima <hugo.pl@gmail.com>2012-03-08 16:54:40 -0300
commitaa091e00ef71fb309844de900dd9a8248d62af14 (patch)
treee28af4f036ca4c0da7d5f1bfb521d529d9a1b7a3 /PySide
parentfe4dd9d63f8113d978e4380a9333bbe3ade5d9ec (diff)
Fixed windows compilation.
Diffstat (limited to 'PySide')
-rw-r--r--PySide/QtOpenGL/typesystem_opengl.xml45
1 files changed, 28 insertions, 17 deletions
diff --git a/PySide/QtOpenGL/typesystem_opengl.xml b/PySide/QtOpenGL/typesystem_opengl.xml
index 1bee27fc1..58c6c122d 100644
--- a/PySide/QtOpenGL/typesystem_opengl.xml
+++ b/PySide/QtOpenGL/typesystem_opengl.xml
@@ -94,28 +94,39 @@
<template name="callArrayFunction">
int _size = PySequence_Size(%PYARG_2);
- %ATTR_TYPE _list[_size];
if (_size) {
- Shiboken::AutoDecRef fast(PySequence_Fast(%PYARG_2, "Failed to parse sequence with type %VECTOR_TYPE."));
- for(int i=0; i &lt; _size; i++) {
- PyObject* pv = PySequence_Fast_GET_ITEM(fast.object(), i);
- _list[i] = %CONVERTTOCPP[ %ATTR_TYPE ](pv);
- }
- }
- %CPPSELF.%FUNCTION_NAME(%1, _list, %3);
+ %ATTR_TYPE *_list = new %ATTR_TYPE[_size];
+ if (_size) {
+ Shiboken::AutoDecRef fast(PySequence_Fast(%PYARG_2, "Failed to parse sequence with type %VECTOR_TYPE."));
+ for(int i=0; i &lt; _size; i++) {
+ PyObject* pv = PySequence_Fast_GET_ITEM(fast.object(), i);
+ _list[i] = %CONVERTTOCPP[ %ATTR_TYPE ](pv);
+ }
+ }
+ %CPPSELF.%FUNCTION_NAME(%1, _list, %3);
+ delete[] _list;
+ } else {
+ %CPPSELF.%FUNCTION_NAME(%1, NULL, %3);
+ }
+
</template>
<template name="callArrayFunctionWithCount">
int _size = PySequence_Size(%PYARG_2);
- %ATTR_TYPE _list[_size];
- if (_size) {
- Shiboken::AutoDecRef fast(PySequence_Fast(%PYARG_2, "Failed to parse sequence with type %VECTOR_TYPE."));
- for(int i=0; i &lt; _size; i++) {
- PyObject* pv = PySequence_Fast_GET_ITEM(fast.object(), i);
- _list[i] = %CONVERTTOCPP[ %ATTR_TYPE ](pv);
- }
- }
- %CPPSELF.%FUNCTION_NAME(%1, _list, _size);
+ if (size) {
+ %ATTR_TYPE *_list = new %ATTR_TYPE[_size];
+ if (_size) {
+ Shiboken::AutoDecRef fast(PySequence_Fast(%PYARG_2, "Failed to parse sequence with type %VECTOR_TYPE."));
+ for(int i=0; i &lt; _size; i++) {
+ PyObject* pv = PySequence_Fast_GET_ITEM(fast.object(), i);
+ _list[i] = %CONVERTTOCPP[ %ATTR_TYPE ](pv);
+ }
+ }
+ %CPPSELF.%FUNCTION_NAME(%1, _list, _size);
+ delete[] _list;
+ } else {
+ %CPPSELF.%FUNCTION_NAME(%1, NULL, 0);
+ }
</template>