diff options
author | Christian Heimes <christian@cheimes.de> | 2008-01-18 08:04:57 +0000 |
---|---|---|
committer | Christian Heimes <christian@cheimes.de> | 2008-01-18 08:04:57 +0000 |
commit | d4fdd35f999bdecaf01d7d8a7025b9054f6b53e8 (patch) | |
tree | 4ae27d0371aa3502f6c4d85a49294d2325667399 /Modules/_elementtree.c | |
parent | 85861fb313a419427e764ac05a3688e7e649cb6a (diff) | |
download | cpython-d4fdd35f999bdecaf01d7d8a7025b9054f6b53e8.tar.gz |
Coverity issue CID #182
size_error: Allocating 1 bytes to pointer "children", which needs at least 4 bytes
Diffstat (limited to 'Modules/_elementtree.c')
-rw-r--r-- | Modules/_elementtree.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/Modules/_elementtree.c b/Modules/_elementtree.c index cc1f5d1609..684081c7c9 100644 --- a/Modules/_elementtree.c +++ b/Modules/_elementtree.c @@ -369,7 +369,17 @@ element_resize(ElementObject* self, int extra) if (size > self->extra->allocated) { /* use Python 2.4's list growth strategy */ size = (size >> 3) + (size < 9 ? 3 : 6) + size; + /* Coverity CID #182 size_error: Allocating 1 bytes to pointer "children" + * which needs at least 4 bytes. + * Although it's a false alarm always assume at least one child to + * be safe. + */ + size = size ? size : 1; if (self->extra->children != self->extra->_children) { + /* Coverity CID #182 size_error: Allocating 1 bytes to pointer + * "children", which needs at least 4 bytes. Although it's a + * false alarm always assume at least one child to be safe. + */ children = PyObject_Realloc(self->extra->children, size * sizeof(PyObject*)); if (!children) |