summaryrefslogtreecommitdiffstats
path: root/Modules/_csv.c
diff options
context:
space:
mode:
authorSerhiy Storchaka <storchaka@gmail.com>2015-12-24 08:39:57 (GMT)
committerSerhiy Storchaka <storchaka@gmail.com>2015-12-24 08:39:57 (GMT)
commitf0069403518243e37da0aaaa1148d9dfee1adebd (patch)
treec6fc0eb9f3dc2b917e2f998cb25e59248453d49d /Modules/_csv.c
parent2bd58e39918d83c639366c69a4da247238f8183f (diff)
parent5a57ade58ec5bee85db41b8ce1340ff077781b65 (diff)
downloadcpython-f0069403518243e37da0aaaa1148d9dfee1adebd.zip
cpython-f0069403518243e37da0aaaa1148d9dfee1adebd.tar.gz
cpython-f0069403518243e37da0aaaa1148d9dfee1adebd.tar.bz2
Issue #20440: Massive replacing unsafe attribute setting code with special
macro Py_SETREF.
Diffstat (limited to 'Modules/_csv.c')
-rw-r--r--Modules/_csv.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/Modules/_csv.c b/Modules/_csv.c
index af901e2..fe85069 100644
--- a/Modules/_csv.c
+++ b/Modules/_csv.c
@@ -276,9 +276,8 @@ _set_str(const char *name, PyObject **target, PyObject *src, const char *dflt)
else {
if (PyUnicode_READY(src) == -1)
return -1;
- Py_XDECREF(*target);
Py_INCREF(src);
- *target = src;
+ Py_SETREF(*target, src);
}
}
return 0;
@@ -784,8 +783,7 @@ parse_process_char(ReaderObj *self, Py_UCS4 c)
static int
parse_reset(ReaderObj *self)
{
- Py_XDECREF(self->fields);
- self->fields = PyList_New(0);
+ Py_SETREF(self->fields, PyList_New(0));
if (self->fields == NULL)
return -1;
self->field_len = 0;