Fix formatting of paths containing invalid Unicode
This commit is contained in:
+8
-10
@@ -2027,16 +2027,14 @@ auto write_escaped_cp(OutputIt out, const find_escape_result<Char>& escape)
|
||||
*out++ = static_cast<Char>('\\');
|
||||
break;
|
||||
default:
|
||||
if (is_utf8()) {
|
||||
if (escape.cp < 0x100) {
|
||||
return write_codepoint<2, Char>(out, 'x', escape.cp);
|
||||
}
|
||||
if (escape.cp < 0x10000) {
|
||||
return write_codepoint<4, Char>(out, 'u', escape.cp);
|
||||
}
|
||||
if (escape.cp < 0x110000) {
|
||||
return write_codepoint<8, Char>(out, 'U', escape.cp);
|
||||
}
|
||||
if (escape.cp < 0x100) {
|
||||
return write_codepoint<2, Char>(out, 'x', escape.cp);
|
||||
}
|
||||
if (escape.cp < 0x10000) {
|
||||
return write_codepoint<4, Char>(out, 'u', escape.cp);
|
||||
}
|
||||
if (escape.cp < 0x110000) {
|
||||
return write_codepoint<8, Char>(out, 'U', escape.cp);
|
||||
}
|
||||
for (Char escape_char : basic_string_view<Char>(
|
||||
escape.begin, to_unsigned(escape.end - escape.begin))) {
|
||||
|
||||
Reference in New Issue
Block a user