# HG changeset patch # User Nick Wellnhofer <wellnhofer@aevum.de> # Date 1661007650 -7200 # Sat Aug 20 17:00:50 2022 +0200 # Node ID f7a865e72c1c843b238eda89af337d0efd970f4c # Parent 3fbb03dbf133bd9fdb9777f13d2d90be4b920be9 Use xmlStrlen in *CtxtReadDoc xmlStrlen handles buffers larger than INT_MAX more gracefully. diff --git a/HTMLparser.c b/HTMLparser.c --- a/HTMLparser.c +++ b/HTMLparser.c @@ -7116,13 +7116,10 @@ htmlCtxtReadDoc(htmlParserCtxtPtr ctxt, const xmlChar * cur, const char *URL, const char *encoding, int options) { - const char *buf; - if (cur == NULL) return (NULL); - buf = (const char *) cur; - return (htmlCtxtReadMemory(ctxt, buf, strlen(buf), URL, encoding, - options)); + return (htmlCtxtReadMemory(ctxt, (const char *) cur, xmlStrlen(cur), URL, + encoding, options)); } /** diff --git a/parser.c b/parser.c --- a/parser.c +++ b/parser.c @@ -15359,12 +15359,10 @@ xmlCtxtReadDoc(xmlParserCtxtPtr ctxt, const xmlChar * cur, const char *URL, const char *encoding, int options) { - const char *buf; - if (cur == NULL) return (NULL); - buf = (const char *) cur; - return (xmlCtxtReadMemory(ctxt, buf, strlen(buf), URL, encoding, options)); + return (xmlCtxtReadMemory(ctxt, (const char *) cur, xmlStrlen(cur), URL, + encoding, options)); } /**