From: Andrew M. Kuchling Date: Tue, 3 Oct 2006 19:33:56 +0000 (+0000) Subject: [backport r51253 | neal.norwitz] X-Git-Tag: v2.4.4c1~59 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=167392229615c4db0d8226e607bc12c841e298c6;p=thirdparty%2FPython%2Fcpython.git [backport r51253 | neal.norwitz] Handle failures from lookup. Klocwork 341-342 --- diff --git a/Modules/expat/xmlparse.c b/Modules/expat/xmlparse.c index 19a83ddc361e..388dff880dbb 100644 --- a/Modules/expat/xmlparse.c +++ b/Modules/expat/xmlparse.c @@ -2784,6 +2784,8 @@ storeAtts(XML_Parser parser, const ENCODING *enc, unsigned long uriHash = 0; ((XML_Char *)s)[-1] = 0; /* clear flag */ id = (ATTRIBUTE_ID *)lookup(&dtd->attributeIds, s, 0); + if (!id) + return XML_ERROR_NO_MEMORY; b = id->prefix->binding; if (!b) return XML_ERROR_UNBOUND_PREFIX; @@ -5259,6 +5261,8 @@ getAttributeId(XML_Parser parser, const ENCODING *enc, return NULL; id->prefix = (PREFIX *)lookup(&dtd->prefixes, poolStart(&dtd->pool), sizeof(PREFIX)); + if (!id->prefix) + return NULL; if (id->prefix->name == poolStart(&dtd->pool)) poolFinish(&dtd->pool); else