diff options
author | Scott Jackson <daneren2005@gmail.com> | 2012-10-28 13:10:19 -0700 |
---|---|---|
committer | Scott Jackson <daneren2005@gmail.com> | 2012-10-28 13:10:19 -0700 |
commit | 6ef221e2f3a7c920b0a61ffb84bf0ae56640c114 (patch) | |
tree | d606422f110e5ba52e2a9e4f05c2a97060cfd87f | |
parent | 26b9307a66ff5fbcf18623fd796c25e1a8894a29 (diff) | |
download | dsub-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.java | 12 |
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) { |