[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [18735] branches/blender2.5/blender/source /blender/python/intern: include Py_CmpToRich for python versions lower then 3
Campbell Barton
ideasman42 at gmail.com
Thu Jan 29 11:22:09 CET 2009
Revision: 18735
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=18735
Author: campbellbarton
Date: 2009-01-29 11:22:03 +0100 (Thu, 29 Jan 2009)
Log Message:
-----------
include Py_CmpToRich for python versions lower then 3
Modified Paths:
--------------
branches/blender2.5/blender/source/blender/python/intern/bpy_compat.h
branches/blender2.5/blender/source/blender/python/intern/bpy_util.c
Modified: branches/blender2.5/blender/source/blender/python/intern/bpy_compat.h
===================================================================
--- branches/blender2.5/blender/source/blender/python/intern/bpy_compat.h 2009-01-29 10:19:43 UTC (rev 18734)
+++ branches/blender2.5/blender/source/blender/python/intern/bpy_compat.h 2009-01-29 10:22:03 UTC (rev 18735)
@@ -74,4 +74,11 @@
#endif
#endif
+
+/* defined in bpy_util.c */
+#if PY_VERSION_HEX < 0x03000000
+PyObject *Py_CmpToRich(int op, int cmp);
+#endif
+
+
#endif /* BPY_COMPAT_H__ */
Modified: branches/blender2.5/blender/source/blender/python/intern/bpy_util.c
===================================================================
--- branches/blender2.5/blender/source/blender/python/intern/bpy_util.c 2009-01-29 10:19:43 UTC (rev 18734)
+++ branches/blender2.5/blender/source/blender/python/intern/bpy_util.c 2009-01-29 10:22:03 UTC (rev 18735)
@@ -110,6 +110,46 @@
return 0; /* ok */
}
+
+/* Copied from pythons 3's Object.c */
+#if PY_VERSION_HEX < 0x03000000
+PyObject *
+Py_CmpToRich(int op, int cmp)
+{
+ PyObject *res;
+ int ok;
+
+ if (PyErr_Occurred())
+ return NULL;
+ switch (op) {
+ case Py_LT:
+ ok = cmp < 0;
+ break;
+ case Py_LE:
+ ok = cmp <= 0;
+ break;
+ case Py_EQ:
+ ok = cmp == 0;
+ break;
+ case Py_NE:
+ ok = cmp != 0;
+ break;
+ case Py_GT:
+ ok = cmp > 0;
+ break;
+ case Py_GE:
+ ok = cmp >= 0;
+ break;
+ default:
+ PyErr_BadArgument();
+ return NULL;
+ }
+ res = ok ? Py_True : Py_False;
+ Py_INCREF(res);
+ return res;
+}
+#endif
+
/* for debugging */
void PyObSpit(char *name, PyObject *var) {
fprintf(stderr, "<%s> : ", name);
More information about the Bf-blender-cvs
mailing list