Issue #15876: Fix a refleak in the curses module
The refleak occurred when assigning to window.encoding.
diff --git a/Misc/NEWS b/Misc/NEWS
index 8046b7b..9babfd8 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -26,6 +26,8 @@
Library
-------
+- Issue #15876: Fix a refleak in the curses module: window.encoding.
+
- Issue #15841: The readable(), writable() and seekable() methods of BytesIO
and StringIO objects now raise ValueError when the object has been closed.
Patch by Alessandro Moura.
diff --git a/Modules/_cursesmodule.c b/Modules/_cursesmodule.c
index 3f9ca13..4e1449b 100644
--- a/Modules/_cursesmodule.c
+++ b/Modules/_cursesmodule.c
@@ -1938,6 +1938,7 @@
if (ascii == NULL)
return -1;
encoding = strdup(PyBytes_AS_STRING(ascii));
+ Py_DECREF(ascii);
if (encoding == NULL) {
PyErr_NoMemory();
return -1;