diff --git a/src/com/android/launcher2/WallpaperChooser.java b/src/com/android/launcher2/WallpaperChooser.java index 46f770fc48..386ae970cb 100644 --- a/src/com/android/launcher2/WallpaperChooser.java +++ b/src/com/android/launcher2/WallpaperChooser.java @@ -45,7 +45,6 @@ public class WallpaperChooser extends Activity implements AdapterView.OnItemSele private ImageView mImageView; private boolean mIsWallpaperSet; - private BitmapFactory.Options mOptions; private Bitmap mBitmap; private ArrayList mThumbs; @@ -104,6 +103,16 @@ public class WallpaperChooser extends Activity implements AdapterView.OnItemSele mIsWallpaperSet = false; } + @Override + protected void onDestroy() { + super.onDestroy(); + + if (mLoader != null && mLoader.getStatus() != WallpaperLoader.Status.FINISHED) { + mLoader.cancel(true); + mLoader = null; + } + } + public void onItemSelected(AdapterView parent, View v, int position, long id) { if (mLoader != null && mLoader.getStatus() != WallpaperLoader.Status.FINISHED) { mLoader.cancel(true); @@ -199,6 +208,10 @@ public class WallpaperChooser extends Activity implements AdapterView.OnItemSele drawable.setDither(true); view.postInvalidate(); + + mLoader = null; + } else { + b.recycle(); } } }