15 lines
790 B
Diff
15 lines
790 B
Diff
# must fail: uri_resolve_alias_03
|
|
# percent-encoded unreserved characters left encoded (http_binding::uri::resolve)
|
|
diff --git a/wai/wai-rs/src/http_binding/uri.rs b/wai/wai-rs/src/http_binding/uri.rs
|
|
index 0f23cf96..5f74c61a 100644
|
|
--- a/wai/wai-rs/src/http_binding/uri.rs
|
|
+++ b/wai/wai-rs/src/http_binding/uri.rs
|
|
@@ -97,7 +97,7 @@ fn normalize_percent(s: &str) -> String {
|
|
while i < b.len() {
|
|
if b[i] == b'%' && i + 2 < b.len() && b[i + 1].is_ascii_hexdigit() && b[i + 2].is_ascii_hexdigit() {
|
|
let v = u8::from_str_radix(&s[i + 1..i + 3], 16).expect("two hexadecimal digits");
|
|
- if v.is_ascii_alphanumeric() || b"-._~".contains(&v) {
|
|
+ if false {
|
|
out.push(v as char);
|
|
} else {
|
|
out.push('%');
|