diff -r 1ea46564f04d -r eb74d0175557 jdk/src/java.base/share/classes/java/util/Base64.java --- a/jdk/src/java.base/share/classes/java/util/Base64.java Wed Jun 24 18:50:19 2015 +0300 +++ b/jdk/src/java.base/share/classes/java/util/Base64.java Wed Jun 24 11:15:23 2015 -0700 @@ -737,7 +737,7 @@ // anything left is invalid, if is not MIME. // if MIME, ignore all non-base64 character while (sp < sl) { - if (isMIME && base64[src[sp++]] < 0) + if (isMIME && base64[src[sp++] & 0xff] < 0) continue; throw new IllegalArgumentException( "Input byte array has incorrect ending byte at " + sp);