Fix detection of unfinished Unicode surrogate pair at end of string.
The U&'...' and U&"..." syntaxes silently discarded a surrogate pair
start (that is, a code between U+D800 and U+DBFF) if it occurred at
the very end of the string. This seems like an obvious oversight,
since we throw an error for every other invalid combination of surrogate
characters, including the very same situation in E'...' syntax.
This has been wrong since the pair processing was added (in 9.0),
so back-patch to all supported branches.
Discussion: https://postgr.es/m/19113.1482337898@sss.pgh.pa.us
Branch
------
REL9_5_STABLE
Details
-------
http://git.postgresql.org/pg/commitdiff/d5633af7b60ba70fb0e1713df69af6672d52e2cd
Modified Files
--------------
src/backend/parser/scan.l | 8 ++++++++
1 file changed, 8 insertions(+)