[Python-checkins] commit of r41850 - python/branches/ssize_t/Modules/_elementtree.c
martin.v.loewis
python-checkins at python.org
Fri Dec 30 11:00:36 CET 2005
Author: martin.v.loewis
Date: Fri Dec 30 11:00:32 2005
New Revision: 41850
Modified:
python/branches/ssize_t/Modules/_elementtree.c
Log:
Change module to be backwards compatible.
Modified: python/branches/ssize_t/Modules/_elementtree.c
==============================================================================
--- python/branches/ssize_t/Modules/_elementtree.c (original)
+++ python/branches/ssize_t/Modules/_elementtree.c Fri Dec 30 11:00:32 2005
@@ -92,6 +92,9 @@
#endif
/* compatibility macros */
+#if (PY_VERSION_HEX < 0x02050000)
+typedef int Py_ssize_t;
+#endif
#if (PY_VERSION_HEX < 0x02040000)
#define PyDict_CheckExact PyDict_Check
#if (PY_VERSION_HEX < 0x02020000)
@@ -916,8 +919,9 @@
}
static PyObject*
-element_getitem(ElementObject* self, Py_ssize_t index)
+element_getitem(PyObject* _self, Py_ssize_t index)
{
+ ElementObject* self = (ElementObject*)_self;
if (!self->extra || index < 0 || index >= self->extra->length) {
PyErr_SetString(
PyExc_IndexError,
@@ -931,8 +935,9 @@
}
static PyObject*
-element_getslice(ElementObject* self, Py_ssize_t start, Py_ssize_t end)
+element_getslice(PyObject* _self, Py_ssize_t start, Py_ssize_t end)
{
+ ElementObject* self = (ElementObject*)_self;
Py_ssize_t i;
PyObject* list;
@@ -1158,8 +1163,9 @@
}
static int
-element_setslice(ElementObject* self, Py_ssize_t start, Py_ssize_t end, PyObject* item)
+element_setslice(PyObject* _self, Py_ssize_t start, Py_ssize_t end, PyObject* item)
{
+ ElementObject* self = (ElementObject*)_self;
int i, new, old;
PyObject* recycle = NULL;
@@ -1228,8 +1234,9 @@
}
static int
-element_setitem(ElementObject* self, Py_ssize_t index, PyObject* item)
+element_setitem(PyObject* _self, Py_ssize_t index, PyObject* item)
{
+ ElementObject* self = (ElementObject*)_self;
int i;
PyObject* old;
@@ -1371,10 +1378,10 @@
(inquiry) element_length,
0, /* sq_concat */
0, /* sq_repeat */
- (ssizeargfunc) element_getitem,
- (ssizessizeargfunc) element_getslice,
- (ssizeobjargproc) element_setitem,
- (ssizessizeobjargproc) element_setslice,
+ element_getitem,
+ element_getslice,
+ element_setitem,
+ element_setslice,
};
statichere PyTypeObject Element_Type = {
More information about the Python-checkins
mailing list