From 86d380528bc48525b3257fb730854e8c432c5079 Mon Sep 17 00:00:00 2001 From: kwaclaw Date: Thu, 25 Feb 2010 18:35:36 +0000 Subject: Fix for bug ID 2958794. --- lib/xmlparse.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/xmlparse.c b/lib/xmlparse.c index c766d40..ab34daf 100644 --- a/lib/xmlparse.c +++ b/lib/xmlparse.c @@ -6122,12 +6122,13 @@ poolGrow(STRING_POOL *pool) } if (pool->blocks && pool->start == pool->blocks->s) { int blockSize = (int)(pool->end - pool->start)*2; - pool->blocks = (BLOCK *) + BLOCK *temp = (BLOCK *) pool->mem->realloc_fcn(pool->blocks, (offsetof(BLOCK, s) + blockSize * sizeof(XML_Char))); - if (pool->blocks == NULL) + if (temp == NULL) return XML_FALSE; + pool->blocks = temp; pool->blocks->size = blockSize; pool->ptr = pool->blocks->s + (pool->ptr - pool->start); pool->start = pool->blocks->s; -- cgit v1.2.1