diff options
author | Neal Norwitz <nnorwitz@gmail.com> | 2006-05-10 06:57:58 (GMT) |
---|---|---|
committer | Neal Norwitz <nnorwitz@gmail.com> | 2006-05-10 06:57:58 (GMT) |
commit | c6a989ac3a2ce1f52f48acfb73d04b604ba173b1 (patch) | |
tree | bce50037904969634cf2ed60d969829dd0283f95 /Modules/_elementtree.c | |
parent | ad2ef33245bdd90bf0e80824dbba732b17fdf6b6 (diff) | |
download | cpython-c6a989ac3a2ce1f52f48acfb73d04b604ba173b1.zip cpython-c6a989ac3a2ce1f52f48acfb73d04b604ba173b1.tar.gz cpython-c6a989ac3a2ce1f52f48acfb73d04b604ba173b1.tar.bz2 |
Fix problems found by Coverity.
longobject.c: also fix an ssize_t problem
<a> could have been NULL, so hoist the size calc to not use <a>.
_ssl.c: under fail: self is DECREF'd, but it would have been NULL.
_elementtree.c: delete self if there was an error.
_csv.c: I'm not sure if lineterminator could have been anything other than
a string. However, other string method calls are checked, so check this
one too.
Diffstat (limited to 'Modules/_elementtree.c')
-rw-r--r-- | Modules/_elementtree.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/Modules/_elementtree.c b/Modules/_elementtree.c index 06ae24c..3dd5c26 100644 --- a/Modules/_elementtree.c +++ b/Modules/_elementtree.c @@ -327,8 +327,10 @@ element_new(PyObject* tag, PyObject* attrib) if (attrib != Py_None) { - if (element_new_extra(self, attrib) < 0) + if (element_new_extra(self, attrib) < 0) { + PyObject_Del(self); return NULL; + } self->extra->length = 0; self->extra->allocated = STATIC_CHILDREN; |