summaryrefslogtreecommitdiff
path: root/py/modules/IcePy/Properties.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'py/modules/IcePy/Properties.cpp')
-rw-r--r--py/modules/IcePy/Properties.cpp17
1 files changed, 8 insertions, 9 deletions
diff --git a/py/modules/IcePy/Properties.cpp b/py/modules/IcePy/Properties.cpp
index 039df377b75..77d68c664da 100644
--- a/py/modules/IcePy/Properties.cpp
+++ b/py/modules/IcePy/Properties.cpp
@@ -33,9 +33,9 @@ struct PropertiesObject
extern "C"
#endif
static PropertiesObject*
-propertiesNew(PyObject* /*arg*/)
+propertiesNew(PyTypeObject* type, PyObject* /*args*/, PyObject* /*kwds*/)
{
- PropertiesObject* self = PyObject_New(PropertiesObject, &PropertiesType);
+ PropertiesObject* self = reinterpret_cast<PropertiesObject*>(type->tp_alloc(type, 0));
if(!self)
{
return 0;
@@ -138,7 +138,7 @@ static void
propertiesDealloc(PropertiesObject* self)
{
delete self->properties;
- PyObject_Del(self);
+ Py_TYPE(self)->tp_free(reinterpret_cast<PyObject*>(self));
}
#ifdef WIN32
@@ -275,7 +275,7 @@ propertiesGetPropertyAsInt(PropertiesObject* self, PyObject* args)
return 0;
}
- return PyInt_FromLong(value);
+ return PyLong_FromLong(value);
}
#ifdef WIN32
@@ -309,7 +309,7 @@ propertiesGetPropertyAsIntWithDefault(PropertiesObject* self, PyObject* args)
return 0;
}
- return PyInt_FromLong(value);
+ return PyLong_FromLong(value);
}
#ifdef WIN32
@@ -709,8 +709,7 @@ PyTypeObject PropertiesType =
{
/* The ob_type field must be initialized in the module init function
* to be portable to Windows without using C++. */
- PyObject_HEAD_INIT(0)
- 0, /* ob_size */
+ PyVarObject_HEAD_INIT(0, 0)
STRCAST("IcePy.Properties"), /* tp_name */
sizeof(PropertiesObject), /* tp_basicsize */
0, /* tp_itemsize */
@@ -719,7 +718,7 @@ PyTypeObject PropertiesType =
0, /* tp_print */
0, /* tp_getattr */
0, /* tp_setattr */
- 0, /* tp_compare */
+ 0, /* tp_reserved */
0, /* tp_repr */
0, /* tp_as_number */
0, /* tp_as_sequence */
@@ -774,7 +773,7 @@ IcePy::initProperties(PyObject* module)
PyObject*
IcePy::createProperties(const Ice::PropertiesPtr& props)
{
- PropertiesObject* obj = propertiesNew(0);
+ PropertiesObject* obj = propertiesNew(&PropertiesType, 0, 0);
if(obj)
{
obj->properties = new Ice::PropertiesPtr(props);