summaryrefslogtreecommitdiffstats
path: root/graphics/java
diff options
context:
space:
mode:
authorChih-Chung Chang <chihchung@google.com>2010-08-20 17:10:49 +0800
committerChih-Chung Chang <chihchung@google.com>2010-08-20 17:10:49 +0800
commit966803ab81f8e9bfefa502fcb533de023825a389 (patch)
tree6596c16b0149b4cce395738f91611b62ec557656 /graphics/java
parent2f6d975b93bbc5b55c35a00d913ee38ad9b76401 (diff)
downloadframeworks_base-966803ab81f8e9bfefa502fcb533de023825a389.zip
frameworks_base-966803ab81f8e9bfefa502fcb533de023825a389.tar.gz
frameworks_base-966803ab81f8e9bfefa502fcb533de023825a389.tar.bz2
Don't recycle native bitmap after the finalizer is called.
If an object A's finalizer calls Bitmap B's recycle() when B's finalizer is already called, we will have trouble because the native bitmap is already freed in the finalizer. Change-Id: Ic0be8ed75fb3aacee9ce6e3d9908178a55151eb9
Diffstat (limited to 'graphics/java')
-rw-r--r--graphics/java/android/graphics/Bitmap.java1
1 files changed, 1 insertions, 0 deletions
diff --git a/graphics/java/android/graphics/Bitmap.java b/graphics/java/android/graphics/Bitmap.java
index 7ca3741..00860ae 100644
--- a/graphics/java/android/graphics/Bitmap.java
+++ b/graphics/java/android/graphics/Bitmap.java
@@ -1002,6 +1002,7 @@ public final class Bitmap implements Parcelable {
@Override
protected void finalize() throws Throwable {
try {
+ mRecycled = true;
nativeDestructor(mNativeBitmap);
} finally {
super.finalize();