summaryrefslogtreecommitdiff
path: root/Python/codecs.c
diff options
context:
space:
mode:
authorNeal Norwitz <nnorwitz@gmail.com>2005-11-24 22:09:18 +0000
committerNeal Norwitz <nnorwitz@gmail.com>2005-11-24 22:09:18 +0000
commit969c81859ced909fb4dda8161e2a56c6fe1b3b2e (patch)
tree98fa2763b744085b7e73d4ab3bf51f2d4fcebb20 /Python/codecs.c
parentac7b66912cf29cb32c14170b92e7e674001c03e5 (diff)
downloadcpython-969c81859ced909fb4dda8161e2a56c6fe1b3b2e.tar.gz
Fix a few more ref leaks. Backport candidate
Diffstat (limited to 'Python/codecs.c')
-rw-r--r--Python/codecs.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/Python/codecs.c b/Python/codecs.c
index 4b8d983935..5c521fb0b4 100644
--- a/Python/codecs.c
+++ b/Python/codecs.c
@@ -36,8 +36,7 @@ int PyCodec_Register(PyObject *search_function)
goto onError;
}
if (!PyCallable_Check(search_function)) {
- PyErr_SetString(PyExc_TypeError,
- "argument must be callable");
+ PyErr_SetString(PyExc_TypeError, "argument must be callable");
goto onError;
}
return PyList_Append(interp->codec_search_path, search_function);
@@ -305,7 +304,7 @@ PyObject *PyCodec_Encode(PyObject *object,
const char *errors)
{
PyObject *encoder = NULL;
- PyObject *args = NULL, *result;
+ PyObject *args = NULL, *result = NULL;
PyObject *v;
encoder = PyCodec_Encoder(encoding);
@@ -336,6 +335,7 @@ PyObject *PyCodec_Encode(PyObject *object,
return v;
onError:
+ Py_XDECREF(result);
Py_XDECREF(args);
Py_XDECREF(encoder);
return NULL;