summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBjorn Bringert <bringert@android.com>2010-12-03 01:28:05 -0800
committerAndroid (Google) Code Review <android-gerrit@google.com>2010-12-03 01:28:05 -0800
commit1921eab4e7e61bf4e50b09efa4513853521e5281 (patch)
treee7bd51bddc2fcc16c4c2cfad0eb453ee17087f8e
parentd8591020ec5940aa9ac738593a460a8df8cd560a (diff)
parent212799338d7be336e73eb65de3dcd0338a705a11 (diff)
downloadframeworks_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.java24
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);
}