• Tom Lane's avatar
    Fix detection of unfinished Unicode surrogate pair at end of string. · a8ae1232
    Tom Lane authored
    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
    a8ae1232
scan.l 41.5 KB