summaryrefslogtreecommitdiff
path: root/Parser
diff options
context:
space:
mode:
authorSerhiy Storchaka <storchaka@gmail.com>2015-12-24 10:39:57 +0200
committerSerhiy Storchaka <storchaka@gmail.com>2015-12-24 10:39:57 +0200
commitf0069403518243e37da0aaaa1148d9dfee1adebd (patch)
treec6fc0eb9f3dc2b917e2f998cb25e59248453d49d /Parser
parentMerge: #1753718: clarify RFC compliance and bytes/string argument types. (diff)
parentIssue #20440: Massive replacing unsafe attribute setting code with special (diff)
downloadcpython-f0069403518243e37da0aaaa1148d9dfee1adebd.tar.gz
cpython-f0069403518243e37da0aaaa1148d9dfee1adebd.tar.bz2
cpython-f0069403518243e37da0aaaa1148d9dfee1adebd.zip
Issue #20440: Massive replacing unsafe attribute setting code with special
macro Py_SETREF.
Diffstat (limited to 'Parser')
-rw-r--r--Parser/tokenizer.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/Parser/tokenizer.c b/Parser/tokenizer.c
index cdb5103da5e..9ca3cb4568d 100644
--- a/Parser/tokenizer.c
+++ b/Parser/tokenizer.c
@@ -524,9 +524,8 @@ fp_setreadl(struct tok_state *tok, const char* enc)
if (stream == NULL)
goto cleanup;
- Py_XDECREF(tok->decoding_readline);
readline = _PyObject_GetAttrId(stream, &PyId_readline);
- tok->decoding_readline = readline;
+ Py_SETREF(tok->decoding_readline, readline);
if (pos > 0) {
if (PyObject_CallObject(readline, NULL) == NULL) {
readline = NULL;