postgres.git / summary / log / commit / refs

commit    c4c2958c6b8fbf691a3303fa09f1aa84bb8927d9
Author:   Tom Lane <tgl@sss.pgh.pa.us>
Date:     Sat Mar 23 21:35:04 2019 +0000
First released in: 9.4.22, 9.5.17, 9.6.13, 10.8

    Revert strlen -> strnlen optimization pre-v11.
    
    We don't have a src/port substitute for that function in older branches,
    so it fails on platforms lacking the function natively.  Per buildfarm.


src/backend/utils/adt/xml.c | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/src/backend/utils/adt/xml.c b/src/backend/utils/adt/xml.c index 79698997def..7dd06c7bc69 100644 --- a/src/backend/utils/adt/xml.c +++ b/src/backend/utils/adt/xml.c @@ -1155,15 +1155,8 @@ parse_xml_decl(const xmlChar *str, size_t *lenp, if (xmlStrncmp(p, (xmlChar *) "<?xml", 5) != 0) goto finished; - /* - * If next char is a name char, it's a PI like <?xml-stylesheet ...?> - * rather than an XMLDecl, so we have done what we came to do and found no - * XMLDecl. - * - * We need an input length value for xmlGetUTF8Char, but there's no need - * to count the whole document size, so use strnlen not strlen. - */ - utf8len = strnlen((const char *) (p + 5), MAX_MULTIBYTE_CHAR_LEN); + /* if next char is name char, it's a PI like <?xml-stylesheet ...?> */ + utf8len = strlen((const char *) (p + 5)); utf8char = xmlGetUTF8Char(p + 5, &utf8len); if (PG_XMLISNAMECHAR(utf8char)) goto finished; [parent: 687acb598308]