From 2907d93889b67cda4041c4cb716521ee70af3703 Mon Sep 17 00:00:00 2001 From: "Miss Islington (bot)" <31488909+miss-islington@users.noreply.github.com> Date: Thu, 15 Nov 2018 01:25:58 -0800 Subject: Fix a possible reference leak in _socket.getaddrinfo(). (GH-10543) "single" needs to be decrefed if PyList_Append() fails. (cherry picked from commit 4c596d54aa6a55e9d2a3db78891e656ebbfb63c8) Co-authored-by: Zackery Spytz --- Modules/socketmodule.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Modules/socketmodule.c b/Modules/socketmodule.c index 634c1b9..0139754 100644 --- a/Modules/socketmodule.c +++ b/Modules/socketmodule.c @@ -4249,9 +4249,11 @@ socket_getaddrinfo(PyObject *self, PyObject *args) if (single == NULL) goto err; - if (PyList_Append(all, single)) + if (PyList_Append(all, single)) { + Py_DECREF(single); goto err; - Py_XDECREF(single); + } + Py_DECREF(single); } Py_XDECREF(idna); if (res0) -- cgit v0.12