Fixed a bug in Nature_Type and BPy_Nature_from_Nature() that broke all nature-related functionalities (e.g. pyNatureUP1D() and CurveNatureF1D()).
This commit is contained in:
@@ -109,11 +109,11 @@ PyObject * BPy_FEdge_from_FEdge( FEdge& fe ) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
PyObject * BPy_Nature_from_Nature( unsigned short n ) {
|
PyObject * BPy_Nature_from_Nature( unsigned short n ) {
|
||||||
PyObject *py_n = Nature_Type.tp_new( &Nature_Type, 0, 0 );
|
PyObject *py_n;
|
||||||
|
|
||||||
PyObject *args = PyTuple_New(1);
|
PyObject *args = PyTuple_New(1);
|
||||||
PyTuple_SetItem( args, 0, PyInt_FromLong(n) );
|
PyTuple_SetItem( args, 0, PyInt_FromLong(n) );
|
||||||
Nature_Type.tp_init( py_n, args, 0 );
|
py_n = Nature_Type.tp_new(&Nature_Type, args, NULL);
|
||||||
Py_DECREF(args);
|
Py_DECREF(args);
|
||||||
|
|
||||||
return py_n;
|
return py_n;
|
||||||
@@ -358,4 +358,4 @@ Vec3r * Vec3r_ptr_from_Vector( PyObject* obj ) {
|
|||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@@ -8,9 +8,6 @@ extern "C" {
|
|||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
/*--------------- Python API function prototypes for Nature instance -----------*/
|
|
||||||
static int Nature___init__(BPy_Nature *self, PyObject *args, PyObject *kwds);
|
|
||||||
|
|
||||||
/*----------------------Nature instance definitions ----------------------------*/
|
/*----------------------Nature instance definitions ----------------------------*/
|
||||||
static PyMethodDef BPy_Nature_methods[] = {
|
static PyMethodDef BPy_Nature_methods[] = {
|
||||||
{NULL, NULL, 0, NULL}
|
{NULL, NULL, 0, NULL}
|
||||||
@@ -77,14 +74,14 @@ PyTypeObject Nature_Type = {
|
|||||||
BPy_Nature_methods, /* struct PyMethodDef *tp_methods; */
|
BPy_Nature_methods, /* struct PyMethodDef *tp_methods; */
|
||||||
NULL, /* struct PyMemberDef *tp_members; */
|
NULL, /* struct PyMemberDef *tp_members; */
|
||||||
NULL, /* struct PyGetSetDef *tp_getset; */
|
NULL, /* struct PyGetSetDef *tp_getset; */
|
||||||
&PyInt_Type, /* struct _typeobject *tp_base; */
|
NULL, /* struct _typeobject *tp_base; */
|
||||||
NULL, /* PyObject *tp_dict; */
|
NULL, /* PyObject *tp_dict; */
|
||||||
NULL, /* descrgetfunc tp_descr_get; */
|
NULL, /* descrgetfunc tp_descr_get; */
|
||||||
NULL, /* descrsetfunc tp_descr_set; */
|
NULL, /* descrsetfunc tp_descr_set; */
|
||||||
0, /* long tp_dictoffset; */
|
0, /* long tp_dictoffset; */
|
||||||
(initproc)Nature___init__, /* initproc tp_init; */
|
NULL, /* initproc tp_init; */
|
||||||
NULL, /* allocfunc tp_alloc; */
|
NULL, /* allocfunc tp_alloc; */
|
||||||
PyType_GenericNew, /* newfunc tp_new; */
|
NULL, /* newfunc tp_new; */
|
||||||
|
|
||||||
/* Low-level free-memory routine */
|
/* Low-level free-memory routine */
|
||||||
NULL, /* freefunc tp_free; */
|
NULL, /* freefunc tp_free; */
|
||||||
@@ -109,6 +106,7 @@ PyMODINIT_FUNC Nature_Init( PyObject *module )
|
|||||||
if( module == NULL )
|
if( module == NULL )
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
Nature_Type.tp_base = &PyInt_Type;
|
||||||
if( PyType_Ready( &Nature_Type ) < 0 )
|
if( PyType_Ready( &Nature_Type ) < 0 )
|
||||||
return;
|
return;
|
||||||
Py_INCREF( &Nature_Type );
|
Py_INCREF( &Nature_Type );
|
||||||
@@ -133,14 +131,6 @@ PyMODINIT_FUNC Nature_Init( PyObject *module )
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int Nature___init__(BPy_Nature *self, PyObject *args, PyObject *kwds)
|
|
||||||
{
|
|
||||||
if (PyInt_Type.tp_init((PyObject *)self, args, kwds) < 0)
|
|
||||||
return -1;
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
|
|||||||
Reference in New Issue
Block a user