diff -r 2ee16a0f6df5 -r 83581a2cf49d jdk/src/share/classes/java/net/URI.java --- a/jdk/src/share/classes/java/net/URI.java Thu Sep 01 06:45:00 2011 +0100 +++ b/jdk/src/share/classes/java/net/URI.java Thu Sep 01 13:53:59 2011 +0100 @@ -1711,6 +1711,8 @@ i++; continue; } + if (d != '%') + return false; i++; if (toLower(s.charAt(i)) != toLower(t.charAt(i))) return false;