fix various bugs in BufferedReader.readLine

This commit is contained in:
Joel Dice
2008-07-15 08:59:00 -06:00
parent a2ba391b89
commit 0ae338e74a

View File

@ -38,16 +38,18 @@ public class BufferedReader extends Reader {
} }
if (position >= limit) { if (position >= limit) {
return sb.toString(); return sb.length() == 0 ? null : sb.toString();
} }
for (int i = position; i < limit; ++i) { for (int i = position; i < limit; ++i) {
if (buffer[i] == '\n') { if (buffer[i] == '\n') {
sb.append(buffer, position, i); sb.append(buffer, position, i - position);
position = i + 1; position = i + 1;
return sb.toString(); return sb.toString();
} }
} }
sb.append(buffer, position, limit-position);
position = limit;
} }
} }