mirror of
https://github.com/servo/servo.git
synced 2025-08-04 13:10:20 +01:00
Replace surrogates in JS strings with U+FFFD instead of panicking.
Fix #6519. See #6564.
This commit is contained in:
parent
52e857dd7b
commit
3f07f8e866
1 changed files with 3 additions and 1 deletions
|
@ -355,7 +355,9 @@ pub fn jsstring_to_str(cx: *mut JSContext, s: *mut JSString) -> DOMString {
|
||||||
let char_vec = unsafe {
|
let char_vec = unsafe {
|
||||||
slice::from_raw_parts(chars as *const u16, length as usize)
|
slice::from_raw_parts(chars as *const u16, length as usize)
|
||||||
};
|
};
|
||||||
String::from_utf16(char_vec).unwrap()
|
// This is a wilful spec violation.
|
||||||
|
// See https://github.com/servo/servo/issues/6564
|
||||||
|
String::from_utf16_lossy(char_vec)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue