From 4c596d54aa6a55e9d2a3db78891e656ebbfb63c8 Mon Sep 17 00:00:00 2001 From: Zackery Spytz Date: Wed, 14 Nov 2018 15:39:01 -0700 Subject: [PATCH] Fix a possible reference leak in _socket.getaddrinfo(). (GH-10543) "single" needs to be decrefed if PyList_Append() fails. --- Modules/socketmodule.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Modules/socketmodule.c b/Modules/socketmodule.c index 9149641fce5..a47f0314605 100644 --- a/Modules/socketmodule.c +++ b/Modules/socketmodule.c @@ -6370,9 +6370,11 @@ socket_getaddrinfo(PyObject *self, PyObject *args, PyObject* kwargs) 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)