From ff76eb28c75451bc56e3b93f44dac155ca29e7f5 Mon Sep 17 00:00:00 2001 From: Daniel Veillard Date: Sat, 3 Aug 2013 22:25:13 +0800 Subject: [PATCH] Clear up a potential NULL dereference https://bugzilla.gnome.org/show_bug.cgi?id=705399 if ctxt->node_seq.buffer is null then ctxt->node_seq.maximum ought to be zero but it's better to clarify the check in the code directly. --- parserInternals.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/parserInternals.c b/parserInternals.c index f8a70410..98a58364 100644 --- a/parserInternals.c +++ b/parserInternals.c @@ -1990,7 +1990,8 @@ xmlParserAddNodeInfo(xmlParserCtxtPtr ctxt, /* Otherwise, we need to add new node to buffer */ else { - if (ctxt->node_seq.length + 1 > ctxt->node_seq.maximum) { + if ((ctxt->node_seq.length + 1 > ctxt->node_seq.maximum) || + (ctxt->node_seq.buffer == NULL)) { xmlParserNodeInfo *tmp_buffer; unsigned int byte_size;