Fix logic problem in quoting=csv.QUOTE_ALL, quotechar=None check, add test.
diff --git a/Lib/test/test_csv.py b/Lib/test/test_csv.py
index a3c0843..ed10ed7 100644
--- a/Lib/test/test_csv.py
+++ b/Lib/test/test_csv.py
@@ -32,6 +32,8 @@
self.assertRaises(TypeError, ctor, arg, quoting=None)
self.assertRaises(TypeError, ctor, arg,
quoting=csv.QUOTE_ALL, quotechar='')
+ self.assertRaises(TypeError, ctor, arg,
+ quoting=csv.QUOTE_ALL, quotechar=None)
def test_reader_arg_valid(self):
self._test_arg_valid(csv.reader, [])
diff --git a/Modules/_csv.c b/Modules/_csv.c
index 30b7eca..c592933 100644
--- a/Modules/_csv.c
+++ b/Modules/_csv.c
@@ -401,7 +401,7 @@
PyErr_SetString(PyExc_TypeError, "delimiter must be set");
goto err;
}
- if (quotechar == Py_None && self->quoting != QUOTE_NONE)
+ if (quotechar == Py_None && quoting == NULL)
self->quoting = QUOTE_NONE;
if (self->quoting != QUOTE_NONE && self->quotechar == 0) {
PyErr_SetString(PyExc_TypeError,