Revert "PL/Python: Remove workaround for returning booleans in Python <2.3"
authorPeter Eisentraut <peter_e@gmx.net>
Sat, 5 Jan 2013 13:49:19 +0000 (08:49 -0500)
committerPeter Eisentraut <peter_e@gmx.net>
Sat, 5 Jan 2013 13:50:58 +0000 (08:50 -0500)
This reverts commit be0dfbad3671ed2503a2a661e70b48c5b364e069.

The previous information that Py_RETURN_TRUE and Py_RETURN_FALSE are
supported in Python 2.3 is wrong.  They require Python 2.4.  Update the
comment about that.

src/pl/plpython/plpy_typeio.c

index 74da5180f1b8e40da653b003ded6af73ddde8398..8f2367d30425f38c4175312a75df1d32f2c27ec1 100644 (file)
@@ -492,9 +492,15 @@ PLy_input_datum_func2(PLyDatumToOb *arg, Oid typeOid, HeapTuple typeTup)
 static PyObject *
 PLyBool_FromBool(PLyDatumToOb *arg, Datum d)
 {
+   /*
+    * We would like to use Py_RETURN_TRUE and Py_RETURN_FALSE here for
+    * generating SQL from trigger functions, but those are only supported in
+    * Python >= 2.4, and we support older versions.
+    * http://docs.python.org/api/boolObjects.html
+    */
    if (DatumGetBool(d))
-       Py_RETURN_TRUE;
-   Py_RETURN_FALSE;
+       return PyBool_FromLong(1);
+   return PyBool_FromLong(0);
 }
 
 static PyObject *