Fixed windows compilation.

This commit is contained in:
Renato Filho 2011-07-28 11:15:26 -03:00
commit 4f873e6f79

View file

@ -94,28 +94,39 @@
<template name="callArrayFunction"> <template name="callArrayFunction">
int _size = PySequence_Size(%PYARG_2); int _size = PySequence_Size(%PYARG_2);
%ATTR_TYPE _list[_size];
if (_size) { if (_size) {
Shiboken::AutoDecRef fast(PySequence_Fast(%PYARG_2, "Failed to parse sequence with type %VECTOR_TYPE.")); %ATTR_TYPE *_list = new %ATTR_TYPE[_size];
for(int i=0; i &lt; _size; i++) { if (_size) {
PyObject* pv = PySequence_Fast_GET_ITEM(fast.object(), i); Shiboken::AutoDecRef fast(PySequence_Fast(%PYARG_2, "Failed to parse sequence with type %VECTOR_TYPE."));
_list[i] = %CONVERTTOCPP[ %ATTR_TYPE ](pv); 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); }
}
%CPPSELF.%FUNCTION_NAME(%1, _list, %3);
delete[] _list;
} else {
%CPPSELF.%FUNCTION_NAME(%1, NULL, %3);
}
</template> </template>
<template name="callArrayFunctionWithCount"> <template name="callArrayFunctionWithCount">
int _size = PySequence_Size(%PYARG_2); int _size = PySequence_Size(%PYARG_2);
%ATTR_TYPE _list[_size]; if (size) {
if (_size) { %ATTR_TYPE *_list = new %ATTR_TYPE[_size];
Shiboken::AutoDecRef fast(PySequence_Fast(%PYARG_2, "Failed to parse sequence with type %VECTOR_TYPE.")); if (_size) {
for(int i=0; i &lt; _size; i++) { Shiboken::AutoDecRef fast(PySequence_Fast(%PYARG_2, "Failed to parse sequence with type %VECTOR_TYPE."));
PyObject* pv = PySequence_Fast_GET_ITEM(fast.object(), i); for(int i=0; i &lt; _size; i++) {
_list[i] = %CONVERTTOCPP[ %ATTR_TYPE ](pv); PyObject* pv = PySequence_Fast_GET_ITEM(fast.object(), i);
} _list[i] = %CONVERTTOCPP[ %ATTR_TYPE ](pv);
} }
%CPPSELF.%FUNCTION_NAME(%1, _list, _size); }
%CPPSELF.%FUNCTION_NAME(%1, _list, _size);
delete[] _list;
} else {
%CPPSELF.%FUNCTION_NAME(%1, NULL, 0);
}
</template> </template>