aboutsummaryrefslogtreecommitdiff
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
commitd88d71e3100c0d9687715e4ffa05a72f4599065c (patch)
tree77097bffa01367368d4dc7d62f0f1968e498a74a /src/backend/utils/adt/xml.c
parentde922529fe6211acc008f69a61912e5848091b37 (diff)
downloadpostgresql-d88d71e3100c0d9687715e4ffa05a72f4599065c.tar.gz
postgresql-d88d71e3100c0d9687715e4ffa05a72f4599065c.zip
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 102c1d983a8..f8f271c6269 100644
--- a/src/backend/utils/adt/xml.c
+++ b/src/backend/utils/adt/xml.c
@@ -1213,15 +1213,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;