Escape the unmatched surrogates with lower-case hexadecimal numbers

It's done the same way for the rest of the codepoint escapes.
This commit is contained in:
Tobias Bucher 2016-07-28 11:30:38 +02:00
parent d1df3fecdf
commit bb6c27e74d
1 changed files with 2 additions and 2 deletions

View File

@ -408,7 +408,7 @@ impl fmt::Debug for Wtf8 {
&self.bytes[pos .. surrogate_pos]
)},
)?;
write!(formatter, "\\u{{{:X}}}", surrogate)?;
write!(formatter, "\\u{{{:x}}}", surrogate)?;
pos = surrogate_pos + 3;
}
}
@ -1066,7 +1066,7 @@ mod tests {
fn wtf8buf_show() {
let mut string = Wtf8Buf::from_str("a\té \u{7f}💩\r");
string.push(CodePoint::from_u32(0xD800).unwrap());
assert_eq!(format!("{:?}", string), "\"a\\\\u{7f}\u{1f4a9}\\r\\u{D800}\"");
assert_eq!(format!("{:?}", string), "\"a\\\\u{7f}\u{1f4a9}\\r\\u{d800}\"");
}
#[test]