mirror of
https://github.com/servo/servo.git
synced 2025-08-17 11:25:35 +01:00
Handle nonmappable code points in Document::encoding_parse_a_url (#37541)
This is a followup to https://github.com/servo/servo/pull/33825. Using `Encoder::encode` introduced a subtle bug: That function will silently replace nonmappable code points (such as `㐀` in euc-jp). The url spec however expects nonmappable characters to be treated differently. There is actually an open bug in the `rust-url` repo about this: https://github.com/servo/rust-url/issues/649, with the conclusion apparently being that this should not be implemented by the url crate itself. Gecko implementation of the equivalent algorithm for reference: https://searchfox.org/mozilla-central/rev/d52edf7ea4236446e118a2edc815023c5479663f/netwerk/base/nsStandardURL.cpp#116-172. Testing: More web platform tests pass Part of https://github.com/servo/servo/issues/5601 --------- Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
This commit is contained in:
parent
3a54ddd034
commit
a27c9ee691
14 changed files with 65 additions and 294148 deletions
|
@ -1,12 +1,3 @@
|
|||
[percent-encoding.window.html]
|
||||
[Input \x0eA with encoding iso-2022-jp]
|
||||
expected: FAIL
|
||||
|
||||
[Input with encoding gb18030]
|
||||
expected: FAIL
|
||||
|
||||
[Input † with encoding big5]
|
||||
expected: FAIL
|
||||
|
||||
[Input U+d800 with encoding windows-1252]
|
||||
expected: FAIL
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue