X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fnet%2Fpterodactylus%2Futil%2Fio%2FLimitedInputStream.java;h=5224bde9c3828cc78a4a2facce455f98358af509;hb=9ead5c4ce7962b75e632346e51a984bcb1f71eed;hp=8e23f24026454f32419248a4e6c792b9169c8375;hpb=87607d6d051b828515044b71a7ddb549e13deae1;p=jSite2.git diff --git a/src/net/pterodactylus/util/io/LimitedInputStream.java b/src/net/pterodactylus/util/io/LimitedInputStream.java index 8e23f24..5224bde 100644 --- a/src/net/pterodactylus/util/io/LimitedInputStream.java +++ b/src/net/pterodactylus/util/io/LimitedInputStream.java @@ -1,6 +1,7 @@ /** * © 2008 INA Service GmbH */ + package net.pterodactylus.util.io; import java.io.FilterInputStream; @@ -12,7 +13,6 @@ import java.io.InputStream; * bytes from the underlying input stream. * * @author David Roden - * @version $Id$ */ public class LimitedInputStream extends FilterInputStream { @@ -38,6 +38,9 @@ public class LimitedInputStream extends FilterInputStream { */ @Override public synchronized int available() throws IOException { + if (remaining == 0) { + return 0; + } return (int) Math.min(super.available(), Math.min(Integer.MAX_VALUE, remaining)); } @@ -73,7 +76,7 @@ public class LimitedInputStream extends FilterInputStream { */ @Override public synchronized long skip(long n) throws IOException { - if (n < 0) { + if ((n < 0) || (remaining == 0)) { return 0; } long skipped = super.skip(Math.min(n, remaining)); @@ -82,10 +85,8 @@ public class LimitedInputStream extends FilterInputStream { } /** - * {@inheritDoc} - * - * This method does nothing, as {@link #mark(int)} and {@link #reset()} are - * not supported. + * {@inheritDoc} This method does nothing, as {@link #mark(int)} and + * {@link #reset()} are not supported. * * @see java.io.FilterInputStream#mark(int) */ @@ -106,10 +107,8 @@ public class LimitedInputStream extends FilterInputStream { } /** - * {@inheritDoc} - * - * This method does nothing, as {@link #mark(int)} and {@link #reset()} are - * not supported. + * {@inheritDoc} This method does nothing, as {@link #mark(int)} and + * {@link #reset()} are not supported. * * @see java.io.FilterInputStream#reset() */