Mercurial > hg4j
changeset 391:856517285256
Provide more details about exception
author | Artem Tikhomirov <tikhomirov.artem@gmail.com> |
---|---|
date | Mon, 20 Feb 2012 03:32:52 +0100 |
parents | 6952d9ce97f1 |
children | 656a6c1346ff |
files | src/org/tmatesoft/hg/core/HgInvalidFileException.java src/org/tmatesoft/hg/internal/InflaterDataAccess.java |
diffstat | 2 files changed, 19 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/src/org/tmatesoft/hg/core/HgInvalidFileException.java Thu Feb 16 16:08:51 2012 +0100 +++ b/src/org/tmatesoft/hg/core/HgInvalidFileException.java Mon Feb 20 03:32:52 2012 +0100 @@ -59,4 +59,19 @@ public File getFile() { return localFile; } + + @Override + protected void appendDetails(StringBuilder sb) { + super.appendDetails(sb); + if (localFile != null) { + sb.append(" file:"); + sb.append(localFile.getPath()); + sb.append(','); + if (localFile.exists()) { + sb.append("EXISTS"); + } else { + sb.append("DOESN'T EXIST"); + } + } + } }
--- a/src/org/tmatesoft/hg/internal/InflaterDataAccess.java Thu Feb 16 16:08:51 2012 +0100 +++ b/src/org/tmatesoft/hg/internal/InflaterDataAccess.java Mon Feb 20 03:32:52 2012 +0100 @@ -127,11 +127,12 @@ } @Override - public void skip(int bytes) throws IOException { + public void skip(final int bytesToSkip) throws IOException { + int bytes = bytesToSkip; if (bytes < 0) { bytes += decompressedPos; if (bytes < 0) { - throw new IOException("Underflow. Rewind past start of the slice."); + throw new IOException(String.format("Underflow. Rewind past start of the slice. To skip:%d, decPos:%d, decLen:%d. Left:%d", bytesToSkip, decompressedPos, decompressedLength, bytes)); } reset(); // fall-through @@ -141,7 +142,7 @@ bytes--; } if (bytes != 0) { - throw new IOException("Underflow. Rewind past end of the slice"); + throw new IOException(String.format("Underflow. Rewind past end of the slice. To skip:%d, decPos:%d, decLen:%d. Left:%d", bytesToSkip, decompressedPos, decompressedLength, bytes)); } }