aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorScott Jackson <daneren2005@gmail.com>2012-10-28 13:10:19 -0700
committerScott Jackson <daneren2005@gmail.com>2012-10-28 13:10:19 -0700
commit6ef221e2f3a7c920b0a61ffb84bf0ae56640c114 (patch)
treed606422f110e5ba52e2a9e4f05c2a97060cfd87f
parent26b9307a66ff5fbcf18623fd796c25e1a8894a29 (diff)
downloaddsub-6ef221e2f3a7c920b0a61ffb84bf0ae56640c114.tar.gz
dsub-6ef221e2f3a7c920b0a61ffb84bf0ae56640c114.tar.bz2
dsub-6ef221e2f3a7c920b0a61ffb84bf0ae56640c114.zip
Fix artwork memory leak
-rw-r--r--subsonic-android/src/github/daneren2005/dsub/util/ImageLoader.java12
1 files changed, 7 insertions, 5 deletions
diff --git a/subsonic-android/src/github/daneren2005/dsub/util/ImageLoader.java b/subsonic-android/src/github/daneren2005/dsub/util/ImageLoader.java
index e1a9d86a..38b54fbc 100644
--- a/subsonic-android/src/github/daneren2005/dsub/util/ImageLoader.java
+++ b/subsonic-android/src/github/daneren2005/dsub/util/ImageLoader.java
@@ -63,7 +63,7 @@ public class ImageLoader implements Runnable {
private final BlockingQueue<Task> queue;
private final int imageSizeDefault;
private final int imageSizeLarge;
- private Drawable largeUnknownImage;
+ private Drawable largeUnknownImage = null;
public ImageLoader(Context context) {
queue = new LinkedBlockingQueue<Task>(500);
@@ -81,10 +81,12 @@ public class ImageLoader implements Runnable {
}
private void createLargeUnknownImage(Context context) {
- BitmapDrawable drawable = (BitmapDrawable) context.getResources().getDrawable(R.drawable.unknown_album_large);
- Bitmap bitmap = Bitmap.createScaledBitmap(drawable.getBitmap(), imageSizeLarge, imageSizeLarge, true);
- bitmap = createReflection(bitmap);
- largeUnknownImage = Util.createDrawableFromBitmap(context, bitmap);
+ if(largeUnknownImage == null) {
+ BitmapDrawable drawable = (BitmapDrawable) context.getResources().getDrawable(R.drawable.unknown_album_large);
+ Bitmap bitmap = Bitmap.createScaledBitmap(drawable.getBitmap(), imageSizeLarge, imageSizeLarge, true);
+ bitmap = createReflection(bitmap);
+ largeUnknownImage = Util.createDrawableFromBitmap(context, bitmap);
+ }
}
public void loadImage(View view, MusicDirectory.Entry entry, boolean large, boolean crossfade) {