Index: C:/harmony/trunk_0427/modules/luni/src/main/java/java/io/BufferedReader.java =================================================================== --- C:/harmony/trunk_0427/modules/luni/src/main/java/java/io/BufferedReader.java (revision 420699) +++ C:/harmony/trunk_0427/modules/luni/src/main/java/java/io/BufferedReader.java (working copy) @@ -238,8 +238,6 @@ if (isOpen()) { // check for null int bufLen = buffer.length; - if (length == 0) - return 0; // avoid int overflow if (0 <= offset && offset <= bufLen && 0 < length && length <= bufLen - offset) { @@ -244,6 +242,8 @@ if (0 <= offset && offset <= bufLen && 0 < length && length <= bufLen - offset) { int required; + if (length == 0) + return 0; if (pos < count) { /* There are bytes available in the buffer. */ int copylength = count - pos >= length ? length : count