Loading core/jni/android/graphics/Bitmap.cpp +0 −7 Original line number Diff line number Diff line Loading @@ -39,7 +39,6 @@ static jclass gBitmap_class; static jfieldID gBitmap_nativePtr; static jmethodID gBitmap_constructorMethodID; static jmethodID gBitmap_reinitMethodID; static jmethodID gBitmap_getAllocationByteCountMethodID; namespace android { Loading Loading @@ -193,11 +192,6 @@ void reinitBitmap(JNIEnv* env, jobject javaBitmap, const SkImageInfo& info, info.width(), info.height(), isPremultiplied); } int getBitmapAllocationByteCount(JNIEnv* env, jobject javaBitmap) { return env->CallIntMethod(javaBitmap, gBitmap_getAllocationByteCountMethodID); } jobject createBitmap(JNIEnv* env, Bitmap* bitmap, int bitmapCreateFlags, jbyteArray ninePatchChunk, jobject ninePatchInsets, int density) { Loading Loading @@ -1227,7 +1221,6 @@ int register_android_graphics_Bitmap(JNIEnv* env) gBitmap_nativePtr = GetFieldIDOrDie(env, gBitmap_class, "mNativePtr", "J"); gBitmap_constructorMethodID = GetMethodIDOrDie(env, gBitmap_class, "<init>", "(JIIIZ[BLandroid/graphics/NinePatch$InsetStruct;Z)V"); gBitmap_reinitMethodID = GetMethodIDOrDie(env, gBitmap_class, "reinit", "(IIZ)V"); gBitmap_getAllocationByteCountMethodID = GetMethodIDOrDie(env, gBitmap_class, "getAllocationByteCount", "()I"); return android::RegisterMethodsOrDie(env, "android/graphics/Bitmap", gBitmapMethods, NELEM(gBitmapMethods)); } core/jni/android/graphics/Bitmap.h +0 −2 Original line number Diff line number Diff line Loading @@ -56,8 +56,6 @@ bool unlockPixels(JNIEnv* env, jobject bitmap); void reinitBitmap(JNIEnv* env, jobject javaBitmap, const SkImageInfo& info, bool isPremultiplied); int getBitmapAllocationByteCount(JNIEnv* env, jobject javaBitmap); } // namespace bitmap } // namespace android Loading core/jni/android/graphics/BitmapFactory.cpp +2 −2 Original line number Diff line number Diff line Loading @@ -327,10 +327,10 @@ static jobject doDecode(JNIEnv* env, std::unique_ptr<SkStreamRewindable> stream, reuseBitmap = &bitmap::toBitmap(env, javaBitmap); if (reuseBitmap->isImmutable()) { ALOGW("Unable to reuse an immutable bitmap as an image decoder target."); javaBitmap = NULL; javaBitmap = nullptr; reuseBitmap = nullptr; } else { existingBufferSize = bitmap::getBitmapAllocationByteCount(env, javaBitmap); existingBufferSize = reuseBitmap->getAllocationByteCount(); } } Loading core/jni/android/graphics/BitmapRegionDecoder.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -162,7 +162,7 @@ static jobject nativeDecodeRegion(JNIEnv* env, jobject, jlong brdHandle, jint in if (recycledBitmap->isImmutable()) { ALOGW("Warning: Reusing an immutable bitmap as an image decoder target."); } recycledBytes = bitmap::getBitmapAllocationByteCount(env, javaBitmap); recycledBytes = recycledBitmap->getAllocationByteCount(); } SkBitmapRegionDecoder* brd = reinterpret_cast<SkBitmapRegionDecoder*>(brdHandle); Loading graphics/java/android/graphics/BitmapFactory.java +9 −3 Original line number Diff line number Diff line Loading @@ -436,10 +436,16 @@ public class BitmapFactory { static void validate(Options opts) { if (opts == null) return; if (opts.inBitmap != null && opts.inBitmap.getConfig() == Bitmap.Config.HARDWARE) { if (opts.inBitmap != null) { if (opts.inBitmap.getConfig() == Bitmap.Config.HARDWARE) { throw new IllegalArgumentException( "Bitmaps with Config.HARDWARE are always immutable"); } if (opts.inBitmap.isRecycled()) { throw new IllegalArgumentException( "Cannot reuse a recycled Bitmap"); } } if (opts.inMutable && opts.inPreferredConfig == Bitmap.Config.HARDWARE) { throw new IllegalArgumentException("Bitmaps with Config.HARDWARE cannot be " + Loading Loading
core/jni/android/graphics/Bitmap.cpp +0 −7 Original line number Diff line number Diff line Loading @@ -39,7 +39,6 @@ static jclass gBitmap_class; static jfieldID gBitmap_nativePtr; static jmethodID gBitmap_constructorMethodID; static jmethodID gBitmap_reinitMethodID; static jmethodID gBitmap_getAllocationByteCountMethodID; namespace android { Loading Loading @@ -193,11 +192,6 @@ void reinitBitmap(JNIEnv* env, jobject javaBitmap, const SkImageInfo& info, info.width(), info.height(), isPremultiplied); } int getBitmapAllocationByteCount(JNIEnv* env, jobject javaBitmap) { return env->CallIntMethod(javaBitmap, gBitmap_getAllocationByteCountMethodID); } jobject createBitmap(JNIEnv* env, Bitmap* bitmap, int bitmapCreateFlags, jbyteArray ninePatchChunk, jobject ninePatchInsets, int density) { Loading Loading @@ -1227,7 +1221,6 @@ int register_android_graphics_Bitmap(JNIEnv* env) gBitmap_nativePtr = GetFieldIDOrDie(env, gBitmap_class, "mNativePtr", "J"); gBitmap_constructorMethodID = GetMethodIDOrDie(env, gBitmap_class, "<init>", "(JIIIZ[BLandroid/graphics/NinePatch$InsetStruct;Z)V"); gBitmap_reinitMethodID = GetMethodIDOrDie(env, gBitmap_class, "reinit", "(IIZ)V"); gBitmap_getAllocationByteCountMethodID = GetMethodIDOrDie(env, gBitmap_class, "getAllocationByteCount", "()I"); return android::RegisterMethodsOrDie(env, "android/graphics/Bitmap", gBitmapMethods, NELEM(gBitmapMethods)); }
core/jni/android/graphics/Bitmap.h +0 −2 Original line number Diff line number Diff line Loading @@ -56,8 +56,6 @@ bool unlockPixels(JNIEnv* env, jobject bitmap); void reinitBitmap(JNIEnv* env, jobject javaBitmap, const SkImageInfo& info, bool isPremultiplied); int getBitmapAllocationByteCount(JNIEnv* env, jobject javaBitmap); } // namespace bitmap } // namespace android Loading
core/jni/android/graphics/BitmapFactory.cpp +2 −2 Original line number Diff line number Diff line Loading @@ -327,10 +327,10 @@ static jobject doDecode(JNIEnv* env, std::unique_ptr<SkStreamRewindable> stream, reuseBitmap = &bitmap::toBitmap(env, javaBitmap); if (reuseBitmap->isImmutable()) { ALOGW("Unable to reuse an immutable bitmap as an image decoder target."); javaBitmap = NULL; javaBitmap = nullptr; reuseBitmap = nullptr; } else { existingBufferSize = bitmap::getBitmapAllocationByteCount(env, javaBitmap); existingBufferSize = reuseBitmap->getAllocationByteCount(); } } Loading
core/jni/android/graphics/BitmapRegionDecoder.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -162,7 +162,7 @@ static jobject nativeDecodeRegion(JNIEnv* env, jobject, jlong brdHandle, jint in if (recycledBitmap->isImmutable()) { ALOGW("Warning: Reusing an immutable bitmap as an image decoder target."); } recycledBytes = bitmap::getBitmapAllocationByteCount(env, javaBitmap); recycledBytes = recycledBitmap->getAllocationByteCount(); } SkBitmapRegionDecoder* brd = reinterpret_cast<SkBitmapRegionDecoder*>(brdHandle); Loading
graphics/java/android/graphics/BitmapFactory.java +9 −3 Original line number Diff line number Diff line Loading @@ -436,10 +436,16 @@ public class BitmapFactory { static void validate(Options opts) { if (opts == null) return; if (opts.inBitmap != null && opts.inBitmap.getConfig() == Bitmap.Config.HARDWARE) { if (opts.inBitmap != null) { if (opts.inBitmap.getConfig() == Bitmap.Config.HARDWARE) { throw new IllegalArgumentException( "Bitmaps with Config.HARDWARE are always immutable"); } if (opts.inBitmap.isRecycled()) { throw new IllegalArgumentException( "Cannot reuse a recycled Bitmap"); } } if (opts.inMutable && opts.inPreferredConfig == Bitmap.Config.HARDWARE) { throw new IllegalArgumentException("Bitmaps with Config.HARDWARE cannot be " + Loading