Ignore XML declaration in xpath_internal(), for UTF8 databases. When a value contained an XML declaration naming some other encoding, this function interpreted UTF8 bytes as the named encoding, yielding mojibake. xml_parse() already has similar logic. This would be necessary but not sufficient for non-UTF8 databases, so preserve behavior there until the xpath facility can support such databases comprehensively. Back-patch to 9.3 (all supported versions).
Pavel Stehule and Noah Misch Discussion: https://postgr.es/m/CAFj8pRC-dM=tT=qkgi+achkm+gwpmjyoayguufxvumcxkdg...@mail.gmail.com Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/2918fcedbf2b2adab688a7849ecce4556ef912ac Modified Files -------------- src/backend/utils/adt/xml.c | 14 +++++++++++++- src/test/regress/expected/xml.out | 31 +++++++++++++++++++++++++++++++ src/test/regress/expected/xml_1.out | 35 +++++++++++++++++++++++++++++++++++ src/test/regress/expected/xml_2.out | 31 +++++++++++++++++++++++++++++++ src/test/regress/sql/xml.sql | 32 ++++++++++++++++++++++++++++++++ 5 files changed, 142 insertions(+), 1 deletion(-) -- Sent via pgsql-committers mailing list (pgsql-committers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-committers