From 56c75720c2115deb9358a95670be5f9dd5f6e945 Mon Sep 17 00:00:00 2001 From: Rhodri James Date: Tue, 25 Apr 2017 18:10:58 +0100 Subject: [PATCH] Validate "parser" and "s" parameters to XML_Parse --- expat/lib/xmlparse.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c index dfdb509b..991a5275 100644 --- a/expat/lib/xmlparse.c +++ b/expat/lib/xmlparse.c @@ -1647,6 +1647,12 @@ XML_SetHashSalt(XML_Parser parser, enum XML_Status XMLCALL XML_Parse(XML_Parser parser, const char *s, int len, int isFinal) { + if (parser == NULL) + return XML_STATUS_ERROR; + if (s == NULL && len != 0) { + errorCode = XML_ERROR_INVALID_ARGUMENT; + return XML_STATUS_ERROR; + } switch (ps_parsing) { case XML_SUSPENDED: errorCode = XML_ERROR_SUSPENDED;