diff options
| author | Bjorn Bringert <bringert@android.com> | 2010-12-03 01:28:05 -0800 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2010-12-03 01:28:05 -0800 |
| commit | 1921eab4e7e61bf4e50b09efa4513853521e5281 (patch) | |
| tree | e7bd51bddc2fcc16c4c2cfad0eb453ee17087f8e | |
| parent | d8591020ec5940aa9ac738593a460a8df8cd560a (diff) | |
| parent | 212799338d7be336e73eb65de3dcd0338a705a11 (diff) | |
| download | frameworks_base-1921eab4e7e61bf4e50b09efa4513853521e5281.zip frameworks_base-1921eab4e7e61bf4e50b09efa4513853521e5281.tar.gz frameworks_base-1921eab4e7e61bf4e50b09efa4513853521e5281.tar.bz2 | |
Merge "Only decrement mRemaining once in read()."
| -rw-r--r-- | core/java/android/content/res/AssetFileDescriptor.java | 24 |
1 files changed, 4 insertions, 20 deletions
diff --git a/core/java/android/content/res/AssetFileDescriptor.java b/core/java/android/content/res/AssetFileDescriptor.java index 01ae1da..9893133 100644 --- a/core/java/android/content/res/AssetFileDescriptor.java +++ b/core/java/android/content/res/AssetFileDescriptor.java @@ -16,7 +16,6 @@ package android.content.res; -import android.os.MemoryFile; import android.os.Parcel; import android.os.ParcelFileDescriptor; import android.os.Parcelable; @@ -184,14 +183,9 @@ public class AssetFileDescriptor implements Parcelable { @Override public int read() throws IOException { - if (mRemaining >= 0) { - if (mRemaining == 0) return -1; - int res = super.read(); - if (res >= 0) mRemaining--; - return res; - } - - return super.read(); + byte[] buffer = new byte[1]; + int result = read(buffer, 0, 1); + return result == -1 ? -1 : buffer[0] & 0xff; } @Override @@ -209,16 +203,7 @@ public class AssetFileDescriptor implements Parcelable { @Override public int read(byte[] buffer) throws IOException { - if (mRemaining >= 0) { - if (mRemaining == 0) return -1; - int count = buffer.length; - if (count > mRemaining) count = (int)mRemaining; - int res = super.read(buffer, 0, count); - if (res >= 0) mRemaining -= res; - return res; - } - - return super.read(buffer); + return read(buffer, 0, buffer.length); } @Override @@ -231,7 +216,6 @@ public class AssetFileDescriptor implements Parcelable { return res; } - // TODO Auto-generated method stub return super.skip(count); } |
