commit | f47d79fec1b6cbb0d38b9a828cf94202c21e50f8 | [log] [tgz] |
---|---|---|
author | Christian Heimes <christian@cheimes.de> | Mon Sep 10 17:46:09 2012 +0200 |
committer | Christian Heimes <christian@cheimes.de> | Mon Sep 10 17:46:09 2012 +0200 |
tree | 47e3e0b91358bc409df40189eeeb27fa768b531c | |
parent | 76c082911b69c5f3bb2bee9aadef0a0ea9162eac [diff] |
Fixed reference leak in error branch of _bufferedreader_read_all(). The variable data can contain a bytes object but it wasn't cleaned up when PyList_New() failed. CID 715364
diff --git a/Modules/_io/bufferedio.c b/Modules/_io/bufferedio.c index 67b7cc4..334734b 100644 --- a/Modules/_io/bufferedio.c +++ b/Modules/_io/bufferedio.c
@@ -1499,8 +1499,10 @@ } chunks = PyList_New(0); - if (chunks == NULL) + if (chunks == NULL) { + Py_XDECREF(data); return NULL; + } while (1) { if (data) {