Issue #15604: Update uses of PyObject_IsTrue() to check for and handle errors correctly.
Patch by Serhiy Storchaka.
diff --git a/Modules/_csv.c b/Modules/_csv.c
index a749cec..6c564d7 100644
--- a/Modules/_csv.c
+++ b/Modules/_csv.c
@@ -166,8 +166,12 @@
 {
     if (src == NULL)
         *target = dflt;
-    else
-        *target = PyObject_IsTrue(src);
+    else {
+        int b = PyObject_IsTrue(src);
+        if (b < 0)
+            return -1;
+        *target = b;
+    }
     return 0;
 }