Index: net/base/escape.cc |
diff --git a/net/base/escape.cc b/net/base/escape.cc |
index 15de5e1dbd37d1720eec25cab678654c95c98777..1a1b7357e17fb7cf3809e461f4d9924ed307af15 100644 |
--- a/net/base/escape.cc |
+++ b/net/base/escape.cc |
@@ -291,6 +291,8 @@ STR UnescapeURLWithAdjustmentsImpl( |
// Allow any of the prohibited but non-control characters when |
// we're doing "special" chars. |
(first_byte > ' ' && (rules & UnescapeRule::URL_SPECIAL_CHARS)) || |
+ (first_byte > ' ' && first_byte != '/' && first_byte != '\\' && |
+ (rules & UnescapeRule::URL_SPECIAL_CHARS_EXCEPT_PATH_SEPERATORS)) || |
// Additionally allow non-display characters if requested. |
(first_byte < ' ' && |
(rules & UnescapeRule::SPOOFING_AND_CONTROL_CHARS)))) { |