Commits

Ronald Oussoren  committed 8e5efb7

Improve py2.5 compatibility layer.

  • Participants
  • Parent commits 7a26810
  • Branches pyobjc-ancient

Comments (0)

Files changed (7)

File Modules/objc/OC_NSBundleHack.m

+#include "pyobjc.h"
 #import "OC_NSBundleHack.h"
 #import "objc_util.h"
 

File Modules/objc/OC_PythonData.m

+#include "pyobjc.h"
 #import "OC_PythonData.h"
 
 @implementation OC_PythonData 

File Modules/objc/OC_PythonDictionary.m

+#include "pyobjc.h"
 #import "OC_PythonDictionary.h"
 
 /*

File Modules/objc/OC_PythonString.m

+#include "pyobjc.h"
 #import "OC_PythonString.h"
 
 @implementation OC_PythonString 

File Modules/objc/OC_PythonUnicode.m

+#include "pyobjc.h"
 #import "OC_PythonUnicode.h"
 
 @implementation OC_PythonUnicode 

File Modules/objc/pyobjc-api.h

 #include "Python.h"
 #include <objc/objc.h>
 
+#ifndef PyObjC_COMPAT_H
+#if (PY_VERSION_HEX < 0x02050000)
+typedef int Py_ssize_t;
+#define PY_FORMAT_SIZE_T ""
+#define Py_ARG_SIZE_T "n"
+#define PY_SSIZE_T_MAX INT_MAX
+
+#else
+
+#define Py_ARG_SIZE_T "i"
+#endif
+#endif
+
+
 #import <Foundation/NSException.h>
 
 struct PyObjC_WeakLink {

File Modules/objc/pyobjc-compat.h

 typedef int Py_ssize_t;
 #define PY_FORMAT_SIZE_T ""
 #define Py_ARG_SIZE_T "n"
+#define PY_SSIZE_T_MAX INT_MAX
 
 #else