将 URI 中的错误代理对编码为 U+FFFD (#4329)
This commit is contained in:
@@ -186,8 +186,8 @@ public final class NetworkUtils {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Invalid surrogate pair, encode as '?'
|
// Invalid surrogate pair, encode as U+FFFD (replacement character)
|
||||||
builder.append("%3F");
|
encodeCodePoint(builder, 0xfffd);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -45,10 +45,10 @@ public class NetworkUtilsTest {
|
|||||||
assertEquals("https://www.example.com/%E6%B5%8B%E8%AF%95?a=10+20", encodeLocation("https://www.example.com/测试?a=10 20"));
|
assertEquals("https://www.example.com/%E6%B5%8B%E8%AF%95?a=10+20", encodeLocation("https://www.example.com/测试?a=10 20"));
|
||||||
|
|
||||||
// Invalid surrogate pair
|
// Invalid surrogate pair
|
||||||
assertEquals("https://www.example.com/%3F", encodeLocation("https://www.example.com/\uD83D"));
|
assertEquals("https://www.example.com/%EF%BF%BD", encodeLocation("https://www.example.com/\uD83D"));
|
||||||
assertEquals("https://www.example.com/%3F", encodeLocation("https://www.example.com/\uDE07"));
|
assertEquals("https://www.example.com/%EF%BF%BD", encodeLocation("https://www.example.com/\uDE07"));
|
||||||
assertEquals("https://www.example.com/%3Ftest", encodeLocation("https://www.example.com/\uD83Dtest"));
|
assertEquals("https://www.example.com/%EF%BF%BDtest", encodeLocation("https://www.example.com/\uD83Dtest"));
|
||||||
assertEquals("https://www.example.com/%3Ftest", encodeLocation("https://www.example.com/\uDE07test"));
|
assertEquals("https://www.example.com/%EF%BF%BDtest", encodeLocation("https://www.example.com/\uDE07test"));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|||||||
Reference in New Issue
Block a user