# HG changeset patch # User Artem Tikhomirov # Date 1302741995 -7200 # Node ID facfd8518367f5604e59c15e0d21c739f949ab8c # Parent b8534ac8ac6732efbec62b069b40cadaccc9e499 [4] IllegalArgumentException: Underflow. Legitimate attempt to read 0 bytes lead to exception diff -r b8534ac8ac67 -r facfd8518367 src/org/tmatesoft/hg/internal/FilterDataAccess.java --- a/src/org/tmatesoft/hg/internal/FilterDataAccess.java Thu Apr 14 01:11:40 2011 +0200 +++ b/src/org/tmatesoft/hg/internal/FilterDataAccess.java Thu Apr 14 02:46:35 2011 +0200 @@ -99,8 +99,11 @@ @Override public void readBytes(byte[] b, int off, int len) throws IOException { + if (len == 0) { + return; + } if (count <= 0 || len > count) { - throw new IllegalArgumentException("Underflow"); // XXX be descriptive + throw new IllegalArgumentException(String.format("Underflow. Bytes left: %d, asked to read %d", count, len)); } if (count == length) { dataAccess.seek(offset);