Commit 4892d46
committed
HTML API: Escape all submitted HTML character references.
The HTML API has relied on `esc_attr()` and `esc_html()` when setting string attribute values or the contents of modifiable text. This leads to unexpected behavior when those functions attempt to prevent double-escaping of existing character references, and it can make certain contents impossible to represent.
After this change, the HTML API will reliably escape all submitted plaintext such that it appears in the browser the way it was submitted to the HTML API, with all character references escaped. This does not change the behavior of how URL attributes are escaped.
Developed in #10143
Discussed in https://core.trac.wordpress.org/ticket/64054
Props dmsnell, jonsurrell, westonruter.
Fixes #64054.
git-svn-id: https://develop.svn.wordpress.org/trunk@60919 602fd350-edb4-49c9-b593-d223f7449a821 parent 05324dd commit 4892d46
File tree
4 files changed
+115
-30
lines changed- src/wp-includes/html-api
- tests/phpunit/tests
- block-supports
- html-api
4 files changed
+115
-30
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
5290 | 5290 | | |
5291 | 5291 | | |
5292 | 5292 | | |
5293 | | - | |
| 5293 | + | |
| 5294 | + | |
| 5295 | + | |
| 5296 | + | |
| 5297 | + | |
| 5298 | + | |
| 5299 | + | |
| 5300 | + | |
| 5301 | + | |
| 5302 | + | |
| 5303 | + | |
| 5304 | + | |
| 5305 | + | |
| 5306 | + | |
| 5307 | + | |
| 5308 | + | |
| 5309 | + | |
| 5310 | + | |
| 5311 | + | |
5294 | 5312 | | |
5295 | 5313 | | |
5296 | 5314 | | |
5297 | | - | |
5298 | | - | |
5299 | 5315 | | |
| 5316 | + | |
5300 | 5317 | | |
5301 | 5318 | | |
5302 | 5319 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3746 | 3746 | | |
3747 | 3747 | | |
3748 | 3748 | | |
| 3749 | + | |
| 3750 | + | |
| 3751 | + | |
| 3752 | + | |
| 3753 | + | |
| 3754 | + | |
| 3755 | + | |
| 3756 | + | |
| 3757 | + | |
| 3758 | + | |
| 3759 | + | |
| 3760 | + | |
3749 | 3761 | | |
| 3762 | + | |
3750 | 3763 | | |
3751 | 3764 | | |
3752 | | - | |
3753 | 3765 | | |
3754 | 3766 | | |
3755 | 3767 | | |
3756 | 3768 | | |
3757 | 3769 | | |
3758 | 3770 | | |
3759 | 3771 | | |
3760 | | - | |
| 3772 | + | |
| 3773 | + | |
| 3774 | + | |
| 3775 | + | |
| 3776 | + | |
| 3777 | + | |
| 3778 | + | |
| 3779 | + | |
| 3780 | + | |
| 3781 | + | |
3761 | 3782 | | |
3762 | 3783 | | |
3763 | 3784 | | |
| |||
3871 | 3892 | | |
3872 | 3893 | | |
3873 | 3894 | | |
3874 | | - | |
| 3895 | + | |
| 3896 | + | |
| 3897 | + | |
| 3898 | + | |
| 3899 | + | |
| 3900 | + | |
| 3901 | + | |
| 3902 | + | |
| 3903 | + | |
| 3904 | + | |
| 3905 | + | |
| 3906 | + | |
| 3907 | + | |
| 3908 | + | |
| 3909 | + | |
| 3910 | + | |
| 3911 | + | |
| 3912 | + | |
| 3913 | + | |
3875 | 3914 | | |
3876 | 3915 | | |
3877 | 3916 | | |
3878 | | - | |
3879 | | - | |
3880 | 3917 | | |
3881 | 3918 | | |
| 3919 | + | |
3882 | 3920 | | |
3883 | 3921 | | |
3884 | 3922 | | |
| |||
3950 | 3988 | | |
3951 | 3989 | | |
3952 | 3990 | | |
3953 | | - | |
3954 | | - | |
| 3991 | + | |
| 3992 | + | |
3955 | 3993 | | |
3956 | 3994 | | |
3957 | 3995 | | |
3958 | | - | |
| 3996 | + | |
| 3997 | + | |
| 3998 | + | |
| 3999 | + | |
| 4000 | + | |
| 4001 | + | |
| 4002 | + | |
| 4003 | + | |
| 4004 | + | |
| 4005 | + | |
| 4006 | + | |
| 4007 | + | |
3959 | 4008 | | |
3960 | 4009 | | |
3961 | 4010 | | |
| |||
Lines changed: 5 additions & 5 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
138 | 138 | | |
139 | 139 | | |
140 | 140 | | |
141 | | - | |
| 141 | + | |
142 | 142 | | |
143 | 143 | | |
144 | 144 | | |
| |||
155 | 155 | | |
156 | 156 | | |
157 | 157 | | |
158 | | - | |
| 158 | + | |
159 | 159 | | |
160 | 160 | | |
161 | 161 | | |
| |||
169 | 169 | | |
170 | 170 | | |
171 | 171 | | |
172 | | - | |
| 172 | + | |
173 | 173 | | |
174 | 174 | | |
175 | 175 | | |
| |||
183 | 183 | | |
184 | 184 | | |
185 | 185 | | |
186 | | - | |
| 186 | + | |
187 | 187 | | |
188 | 188 | | |
189 | 189 | | |
| |||
198 | 198 | | |
199 | 199 | | |
200 | 200 | | |
201 | | - | |
| 201 | + | |
202 | 202 | | |
203 | 203 | | |
204 | 204 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
841 | 841 | | |
842 | 842 | | |
843 | 843 | | |
844 | | - | |
| 844 | + | |
845 | 845 | | |
846 | 846 | | |
847 | 847 | | |
| |||
861 | 861 | | |
862 | 862 | | |
863 | 863 | | |
864 | | - | |
| 864 | + | |
865 | 865 | | |
866 | 866 | | |
867 | 867 | | |
| |||
871 | 871 | | |
872 | 872 | | |
873 | 873 | | |
874 | | - | |
875 | | - | |
876 | | - | |
877 | | - | |
878 | | - | |
879 | | - | |
880 | | - | |
881 | | - | |
882 | | - | |
| 874 | + | |
| 875 | + | |
| 876 | + | |
| 877 | + | |
| 878 | + | |
| 879 | + | |
| 880 | + | |
| 881 | + | |
| 882 | + | |
| 883 | + | |
| 884 | + | |
| 885 | + | |
883 | 886 | | |
884 | 887 | | |
885 | 888 | | |
| |||
905 | 908 | | |
906 | 909 | | |
907 | 910 | | |
| 911 | + | |
| 912 | + | |
| 913 | + | |
| 914 | + | |
| 915 | + | |
| 916 | + | |
| 917 | + | |
| 918 | + | |
| 919 | + | |
| 920 | + | |
| 921 | + | |
| 922 | + | |
| 923 | + | |
| 924 | + | |
| 925 | + | |
908 | 926 | | |
909 | 927 | | |
910 | 928 | | |
| |||
2786 | 2804 | | |
2787 | 2805 | | |
2788 | 2806 | | |
2789 | | - | |
| 2807 | + | |
2790 | 2808 | | |
2791 | 2809 | | |
| 2810 | + | |
2792 | 2811 | | |
2793 | 2812 | | |
2794 | 2813 | | |
| |||
2806 | 2825 | | |
2807 | 2826 | | |
2808 | 2827 | | |
2809 | | - | |
| 2828 | + | |
2810 | 2829 | | |
2811 | 2830 | | |
2812 | 2831 | | |
2813 | | - | |
| 2832 | + | |
2814 | 2833 | | |
2815 | 2834 | | |
2816 | 2835 | | |
| |||
0 commit comments