diff --git a/Modules/pyexpat.c b/Modules/pyexpat.c index 7ab51711c37..8ef36d8076b 100644 --- a/Modules/pyexpat.c +++ b/Modules/pyexpat.c @@ -1,11 +1,6 @@ #include "Python.h" #include "xmlparse.h" -/* -** The version number should match the one in _checkversion -*/ -#define VERSION "1.9" - enum HandlerTypes { StartElement, EndElement, @@ -864,6 +859,32 @@ static char pyexpat_module_documentation[] = void initpyexpat(void); /* avoid compiler warnings */ +#if PY_VERSION_HEX < 0x2000000 + +/* 1.5 compatibility: PyModule_AddObject */ +static int +PyModule_AddObject(PyObject *m, char *name, PyObject *o) +{ + PyObject *dict; + if (!PyModule_Check(m) || o == NULL) + return -1; + dict = PyModule_GetDict(m); + if (dict == NULL) + return -1; + if (PyDict_SetItemString(dict, name, o)) + return -1; + Py_DECREF(o); + return 0; +} + +int +PyModule_AddStringConstant(PyObject *m, char *name, char *value) +{ + return PyModule_AddObject(m, name, PyString_FromString(value)); +} + +#endif + DL_EXPORT(void) initpyexpat(void) {