summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Modules/pyexpat.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/Modules/pyexpat.c b/Modules/pyexpat.c
index 01ac14e..3039347 100644
--- a/Modules/pyexpat.c
+++ b/Modules/pyexpat.c
@@ -1128,8 +1128,10 @@ PyUnknownEncodingHandler(void *encodingHandlerData,
}
u = PyUnicode_Decode((char*) template_buffer, 256, name, "replace");
- if (u == NULL || PyUnicode_READY(u))
+ if (u == NULL || PyUnicode_READY(u)) {
+ Py_DECREF(u);
return XML_STATUS_ERROR;
+ }
if (PyUnicode_GET_LENGTH(u) != 256) {
Py_DECREF(u);