Code clean up.

This commit is contained in:
Harald Kuhr 2009-09-15 18:58:37 +02:00
parent 79ca02c8b0
commit 4baafd2e4d
2 changed files with 4 additions and 11 deletions

View File

@ -53,6 +53,7 @@ public final class BufferedImageInputStream extends ImageInputStreamImpl impleme
if (!isBufferValid()) { if (!isBufferValid()) {
fillBuffer(); fillBuffer();
} }
if (mBufferLength <= 0) { if (mBufferLength <= 0) {
return -1; return -1;
} }
@ -67,7 +68,6 @@ public final class BufferedImageInputStream extends ImageInputStreamImpl impleme
public int read(final byte[] pBuffer, final int pOffset, final int pLength) throws IOException { public int read(final byte[] pBuffer, final int pOffset, final int pLength) throws IOException {
bitOffset = 0; bitOffset = 0;
// TODO: Consider fixing the bypass buffer code...
if (!isBufferValid()) { if (!isBufferValid()) {
// Bypass cache if cache is empty for reads longer than buffer // Bypass cache if cache is empty for reads longer than buffer
if (pLength >= mBuffer.length) { if (pLength >= mBuffer.length) {
@ -82,20 +82,13 @@ public final class BufferedImageInputStream extends ImageInputStreamImpl impleme
} }
private int readDirect(final byte[] pBuffer, final int pOffset, final int pLength) throws IOException { private int readDirect(final byte[] pBuffer, final int pOffset, final int pLength) throws IOException {
// System.err.println("BEFORE streamPos: " + streamPos); // TODO: Figure out why reading more than the buffer length causes alignment issues...
// System.err.println("BEFORE mStream.getStreamPosition(): " + mStream.getStreamPosition());
int read = mStream.read(pBuffer, pOffset, Math.min(mBuffer.length, pLength)); int read = mStream.read(pBuffer, pOffset, Math.min(mBuffer.length, pLength));
if (read > 0) { if (read > 0) {
streamPos += read; streamPos += read;
} }
// System.err.println("AFTER streamPos: " + streamPos);
// System.err.println("AFTER mStream.getStreamPosition(): " + mStream.getStreamPosition());
// System.err.println();
mBufferStart = mStream.getStreamPosition(); mBufferStart = mStream.getStreamPosition();
mBufferLength = 0; mBufferLength = 0;
@ -123,7 +116,7 @@ public final class BufferedImageInputStream extends ImageInputStreamImpl impleme
@Override @Override
public void seek(long pPosition) throws IOException { public void seek(long pPosition) throws IOException {
// TODO: Could probably be optimized to not invalidate buffer if new pos is within current buffer // TODO: Could probably be optimized to not invalidate buffer if new position is within current buffer
mStream.seek(pPosition); mStream.seek(pPosition);
mBufferLength = 0; // Will invalidate buffer mBufferLength = 0; // Will invalidate buffer
streamPos = mStream.getStreamPosition(); streamPos = mStream.getStreamPosition();

View File

@ -37,9 +37,9 @@ public class URLImageInputStreamSpi extends ImageInputStreamSpi {
if ("file".equals(url.getProtocol())) { if ("file".equals(url.getProtocol())) {
try { try {
return new BufferedImageInputStream(new FileImageInputStream(new File(url.toURI()))); return new BufferedImageInputStream(new FileImageInputStream(new File(url.toURI())));
// return new FileImageInputStream(new File(url.toURI()));
} }
catch (URISyntaxException ignore) { catch (URISyntaxException ignore) {
// This should never happen, but if it does, we'll fall back to using the stream
ignore.printStackTrace(); ignore.printStackTrace();
} }
} }