summaryrefslogtreecommitdiffstats
path: root/Modules/_collectionsmodule.c
diff options
context:
space:
mode:
authorAntoine Pitrou <solipsis@pitrou.net>2012-02-15 01:42:46 (GMT)
committerAntoine Pitrou <solipsis@pitrou.net>2012-02-15 01:42:46 (GMT)
commitf5f1fe0cb5dedf37098622de318656003dc5230d (patch)
treef86c8e3abc437c9d409fe2caba69d4dc003f50a3 /Modules/_collectionsmodule.c
parent71135624d81fac63a1684d5cf31932652f9250ff (diff)
downloadcpython-f5f1fe0cb5dedf37098622de318656003dc5230d.zip
cpython-f5f1fe0cb5dedf37098622de318656003dc5230d.tar.gz
cpython-f5f1fe0cb5dedf37098622de318656003dc5230d.tar.bz2
Issue #13015: Fix a possible reference leak in defaultdict.__repr__.
Patch by Suman Saha.
Diffstat (limited to 'Modules/_collectionsmodule.c')
-rw-r--r--Modules/_collectionsmodule.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/Modules/_collectionsmodule.c b/Modules/_collectionsmodule.c
index 5545d1e..4343159 100644
--- a/Modules/_collectionsmodule.c
+++ b/Modules/_collectionsmodule.c
@@ -1401,8 +1401,10 @@ defdict_repr(defdictobject *dd)
{
int status = Py_ReprEnter(dd->default_factory);
if (status != 0) {
- if (status < 0)
+ if (status < 0) {
+ Py_DECREF(baserepr);
return NULL;
+ }
defrepr = PyUnicode_FromString("...");
}
else