summaryrefslogtreecommitdiffstats
path: root/src/com/android/launcher2/WidgetPreviewLoader.java
diff options
context:
space:
mode:
authorMichael Jurka <mikejurka@google.com>2013-02-15 14:50:15 +0100
committerMichael Jurka <mikejurka@google.com>2013-02-15 14:50:15 +0100
commit5140cfaf471ed21c1cdcf0edcb53ae89b87c6848 (patch)
treeeaff48bb63510a7791ce7282dc4873691a2053b6 /src/com/android/launcher2/WidgetPreviewLoader.java
parent4b503beb549d8151d80eca47e94560861edbf381 (diff)
downloadandroid_packages_apps_Trebuchet-5140cfaf471ed21c1cdcf0edcb53ae89b87c6848.tar.gz
android_packages_apps_Trebuchet-5140cfaf471ed21c1cdcf0edcb53ae89b87c6848.tar.bz2
android_packages_apps_Trebuchet-5140cfaf471ed21c1cdcf0edcb53ae89b87c6848.zip
Fix rare NPE
Bug: 8191673
Diffstat (limited to 'src/com/android/launcher2/WidgetPreviewLoader.java')
-rw-r--r--src/com/android/launcher2/WidgetPreviewLoader.java8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/com/android/launcher2/WidgetPreviewLoader.java b/src/com/android/launcher2/WidgetPreviewLoader.java
index 7c72701f8..6c06e0fcc 100644
--- a/src/com/android/launcher2/WidgetPreviewLoader.java
+++ b/src/com/android/launcher2/WidgetPreviewLoader.java
@@ -236,13 +236,15 @@ public class WidgetPreviewLoader {
public void recycleBitmap(Object o, Bitmap bitmapToRecycle) {
String name = getObjectName(o);
- synchronized(mLoadedPreviews) {
- synchronized(mUnusedBitmaps) {
+ synchronized (mLoadedPreviews) {
+ if (mLoadedPreviews.containsKey(name)) {
Bitmap b = mLoadedPreviews.get(name).get();
if (b == bitmapToRecycle) {
mLoadedPreviews.remove(name);
if (bitmapToRecycle.isMutable()) {
- mUnusedBitmaps.add(new SoftReference<Bitmap>(b));
+ synchronized (mUnusedBitmaps) {
+ mUnusedBitmaps.add(new SoftReference<Bitmap>(b));
+ }
}
} else {
throw new RuntimeException("Bitmap passed in doesn't match up");