--- old/src/java.base/share/classes/sun/invoke/anon/AnonymousClassLoader.java 2015-10-07 19:05:40.000000000 +0100 +++ new/src/java.base/share/classes/sun/invoke/anon/AnonymousClassLoader.java 2015-10-07 19:05:39.000000000 +0100 @@ -25,10 +25,10 @@ package sun.invoke.anon; +import java.io.EOFException; import java.io.IOException; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; -import sun.misc.IOUtils; /** * Anonymous class loader. Will load any valid classfile, producing @@ -225,6 +225,10 @@ if (contentLength < 0) throw new IOException("invalid content length "+contentLength); - return IOUtils.readFully(connection.getInputStream(), contentLength, true); + byte[] b = connection.getInputStream().readAllBytes(); + if (b.length != contentLength) + throw new EOFException("Expected:" + contentLength + ", read:" + b.length); + + return b; } }