From: Robin Dunn Date: Wed, 5 Jul 2006 00:37:11 +0000 (+0000) Subject: Changes needed for building with Python 2.5 X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/a608c09d8533b09af952026203fb609703047843 Changes needed for building with Python 2.5 git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39987 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/wxPython/b b/wxPython/b index 51cf5d683f..78c8654efe 100755 --- a/wxPython/b +++ b/wxPython/b @@ -25,6 +25,8 @@ function getpyver { PYVER=2.3 elif [ "$1" = "24" ]; then PYVER=2.4 + elif [ "$1" = "25" ]; then + PYVER=2.5 else echo You must specify Python version as first parameter. exit diff --git a/wxPython/b.win32 b/wxPython/b.win32 index bf29a2ff5f..5f4908879b 100644 --- a/wxPython/b.win32 +++ b/wxPython/b.win32 @@ -12,6 +12,7 @@ case $1 in 22 | 2.2) VER=22; shift ;; 23 | 2.3) VER=23; shift ;; 24 | 2.4) VER=24; shift ;; + 25 | 2.5) VER=25; shift ;; *) VER=24 esac diff --git a/wxPython/include/wx/wxPython/wxPython_int.h b/wxPython/include/wx/wxPython/wxPython_int.h index dac352d95d..514be3c08a 100644 --- a/wxPython/include/wx/wxPython/wxPython_int.h +++ b/wxPython/include/wx/wxPython/wxPython_int.h @@ -186,6 +186,13 @@ typedef PyGILState_STATE wxPyBlock_t; #endif +// Python 2.5 changes the type of some API parameter and return types. Using +// this typedef for versions < 2.5 will help with the transition... +#if PY_VERSION_HEX < 0x02050000 +typedef int Py_ssize_t; +#endif + + #ifndef wxPyUSE_EXPORTED_API // For Python --> C++ diff --git a/wxPython/src/_bitmap.i b/wxPython/src/_bitmap.i index bd0600d824..93fa2a2b93 100644 --- a/wxPython/src/_bitmap.i +++ b/wxPython/src/_bitmap.i @@ -150,8 +150,8 @@ bit depths, the behaviour is platform dependent.", ""); %RenameCtor(BitmapFromBits, wxBitmap(PyObject* bits, int width, int height, int depth=1 )) { - char* buf; - int length; + char* buf; + Py_ssize_t length; PyString_AsStringAndSize(bits, &buf, &length); return new wxBitmap(buf, width, height, depth); } diff --git a/wxPython/src/helpers.cpp b/wxPython/src/helpers.cpp index 470815f267..0ef3c13249 100644 --- a/wxPython/src/helpers.cpp +++ b/wxPython/src/helpers.cpp @@ -1878,7 +1878,7 @@ wxString* wxString_in_helper(PyObject* source) { str = PyObject_Str(source); if (PyErr_Occurred()) return NULL; } - char* tmpPtr; int tmpSize; + char* tmpPtr; Py_ssize_t tmpSize; PyString_AsStringAndSize(str, &tmpPtr, &tmpSize); target = new wxString(tmpPtr, tmpSize); @@ -1921,7 +1921,7 @@ wxString Py2wxString(PyObject* source) str = PyObject_Str(source); if (PyErr_Occurred()) return wxEmptyString; // TODO: should we PyErr_Clear? } - char* tmpPtr; int tmpSize; + char* tmpPtr; Py_ssize_t tmpSize; PyString_AsStringAndSize(str, &tmpPtr, &tmpSize); target = wxString(tmpPtr, tmpSize);