[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [60816] trunk/blender/source/blender/ python/generic: add local _PyLong_AsInt() needed for python older then 3.3. 2
Campbell Barton
ideasman42 at gmail.com
Thu Oct 17 11:58:36 CEST 2013
Revision: 60816
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=60816
Author: campbellbarton
Date: 2013-10-17 09:58:36 +0000 (Thu, 17 Oct 2013)
Log Message:
-----------
add local _PyLong_AsInt() needed for python older then 3.3.2
Modified Paths:
--------------
trunk/blender/source/blender/python/generic/py_capi_utils.c
trunk/blender/source/blender/python/generic/py_capi_utils.h
Modified: trunk/blender/source/blender/python/generic/py_capi_utils.c
===================================================================
--- trunk/blender/source/blender/python/generic/py_capi_utils.c 2013-10-17 09:44:08 UTC (rev 60815)
+++ trunk/blender/source/blender/python/generic/py_capi_utils.c 2013-10-17 09:58:36 UTC (rev 60816)
@@ -887,3 +887,19 @@
return ret;
}
+
+/* compat only */
+#if PY_VERSION_HEX < 0x03030200
+int
+_PyLong_AsInt(PyObject *obj)
+{
+ int overflow;
+ long result = PyLong_AsLongAndOverflow(obj, &overflow);
+ if (overflow || result > INT_MAX || result < INT_MIN) {
+ PyErr_SetString(PyExc_OverflowError,
+ "Python int too large to convert to C int");
+ return -1;
+ }
+ return (int)result;
+}
+#endif
Modified: trunk/blender/source/blender/python/generic/py_capi_utils.h
===================================================================
--- trunk/blender/source/blender/python/generic/py_capi_utils.h 2013-10-17 09:44:08 UTC (rev 60815)
+++ trunk/blender/source/blender/python/generic/py_capi_utils.h 2013-10-17 09:58:36 UTC (rev 60816)
@@ -72,4 +72,8 @@
int PyC_FlagSet_ToBitfield(PyC_FlagSet *items, PyObject *value, int *r_value, const char *error_prefix);
PyObject *PyC_FlagSet_FromBitfield(PyC_FlagSet *items, int flag);
+#if PY_VERSION_HEX < 0x03030200
+int _PyLong_AsInt(PyObject *obj);
+#endif
+
#endif /* __PY_CAPI_UTILS_H__ */
More information about the Bf-blender-cvs
mailing list