--- old/src/java.httpclient/share/classes/java/net/http/SSLDelegate.java 2016-06-15 13:41:09.000000000 +0100 +++ new/src/java.httpclient/share/classes/java/net/http/SSLDelegate.java 2016-06-15 13:41:08.000000000 +0100 @@ -344,8 +344,8 @@ /* we wait until some user data arrives */ int mark = dst.position(); WrapperResult r = null; - assert dst.position() == 0; - while (dst.position() == 0) { + int pos = dst.position(); + while (dst.position() == pos) { r = wrapper.recvAndUnwrap (dst); dst = (r.buf != dst) ? r.buf: dst; Status status = r.result.getStatus();