- Notifications
You must be signed in to change notification settings - Fork5
Commit94e3311
committed
Handle Unicode surrogate pairs correctly when processing JSON.
In 9.2, Unicode escape sequences are not analysed at all other thanto make sure that they are in the form \uXXXX. But in 9.3 many of thenew operators and functions try to turn JSON text values into text inthe server encoding, and this includes de-escaping Unicode escapesequences. This processing had not taken into account the possibilitythat this might contain a surrogate pair to designate a characteroutside the BMP. That is now handled correctly.This also enforces correct use of surrogate pairs, something that is notdone by the type's input routines. This fact is noted in the docs.1 parentc99d5d1 commit94e3311
4 files changed
+92
-0
lines changedLines changed: 9 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
10150 | 10150 |
| |
10151 | 10151 |
| |
10152 | 10152 |
| |
| 10153 | + | |
| 10154 | + | |
| 10155 | + | |
| 10156 | + | |
| 10157 | + | |
| 10158 | + | |
| 10159 | + | |
| 10160 | + | |
| 10161 | + | |
10153 | 10162 |
| |
10154 | 10163 |
| |
10155 | 10164 |
| |
|
Lines changed: 52 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
646 | 646 |
| |
647 | 647 |
| |
648 | 648 |
| |
| 649 | + | |
649 | 650 |
| |
650 | 651 |
| |
651 | 652 |
| |
| |||
718 | 719 |
| |
719 | 720 |
| |
720 | 721 |
| |
| 722 | + | |
| 723 | + | |
| 724 | + | |
| 725 | + | |
| 726 | + | |
| 727 | + | |
| 728 | + | |
| 729 | + | |
| 730 | + | |
| 731 | + | |
| 732 | + | |
| 733 | + | |
| 734 | + | |
| 735 | + | |
| 736 | + | |
| 737 | + | |
| 738 | + | |
| 739 | + | |
| 740 | + | |
| 741 | + | |
| 742 | + | |
| 743 | + | |
| 744 | + | |
| 745 | + | |
| 746 | + | |
| 747 | + | |
| 748 | + | |
| 749 | + | |
| 750 | + | |
| 751 | + | |
721 | 752 |
| |
722 | 753 |
| |
723 | 754 |
| |
| |||
730 | 761 |
| |
731 | 762 |
| |
732 | 763 |
| |
| 764 | + | |
| 765 | + | |
| 766 | + | |
| 767 | + | |
| 768 | + | |
| 769 | + | |
| 770 | + | |
733 | 771 |
| |
734 | 772 |
| |
735 | 773 |
| |
| |||
784 | 822 |
| |
785 | 823 |
| |
786 | 824 |
| |
| 825 | + | |
| 826 | + | |
| 827 | + | |
| 828 | + | |
| 829 | + | |
| 830 | + | |
| 831 | + | |
787 | 832 |
| |
788 | 833 |
| |
789 | 834 |
| |
790 | 835 |
| |
791 | 836 |
| |
| 837 | + | |
| 838 | + | |
| 839 | + | |
| 840 | + | |
| 841 | + | |
| 842 | + | |
| 843 | + | |
792 | 844 |
| |
793 | 845 |
| |
794 | 846 |
| |
|
Lines changed: 23 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
920 | 920 |
| |
921 | 921 |
| |
922 | 922 |
| |
| 923 | + | |
| 924 | + | |
| 925 | + | |
| 926 | + | |
| 927 | + | |
| 928 | + | |
| 929 | + | |
| 930 | + | |
| 931 | + | |
| 932 | + | |
| 933 | + | |
| 934 | + | |
| 935 | + | |
| 936 | + | |
| 937 | + | |
| 938 | + | |
| 939 | + | |
| 940 | + | |
| 941 | + | |
| 942 | + | |
| 943 | + | |
| 944 | + | |
| 945 | + |
Lines changed: 8 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
296 | 296 |
| |
297 | 297 |
| |
298 | 298 |
| |
| 299 | + | |
| 300 | + | |
| 301 | + | |
| 302 | + | |
| 303 | + | |
| 304 | + | |
| 305 | + | |
| 306 | + |
0 commit comments
Comments
(0)