summaryrefslogtreecommitdiff
path: root/src/backend/utils/adt/xml.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2019-03-23 17:35:04 -0400
committerTom Lane <tgl@sss.pgh.pa.us>2019-03-23 17:35:04 -0400
commitc4c2958c6b8fbf691a3303fa09f1aa84bb8927d9 (patch)
tree087ed2e6e7a76451677356976fff9505e529c47b /src/backend/utils/adt/xml.c
parent687acb59830831e9e640529534ed499e660e482a (diff)
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.
Diffstat (limited to 'src/backend/utils/adt/xml.c')
-rw-r--r--src/backend/utils/adt/xml.c11
1 files 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;