From 1e35ddbc3328515c0bd4c370f6829a3acf1b35cd Mon Sep 17 00:00:00 2001 From: Jay Wang Date: Mon, 22 Aug 2016 20:17:37 -0700 Subject: SnapdragonCamera: Fix memory leak when updating thumbnails. Fix a memory leak with jpeg data buffers saved for updating thumbnails. Ensure that all references are freed and released when exiting. CRs-Fixed: 1054441 Change-Id: Idc79f51f0e70b0b3e39d614ff3dd7f5d1f85aaad --- src/com/android/camera/CameraActivity.java | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) (limited to 'src/com/android/camera/CameraActivity.java') diff --git a/src/com/android/camera/CameraActivity.java b/src/com/android/camera/CameraActivity.java index e7c55dfab..4a56e447e 100644 --- a/src/com/android/camera/CameraActivity.java +++ b/src/com/android/camera/CameraActivity.java @@ -761,8 +761,8 @@ public class CameraActivity extends Activity } private class UpdateThumbnailTask extends AsyncTask { - private final byte[] mJpegData; - private final boolean mCheckOrientation; + private byte[] mJpegData; + private boolean mCheckOrientation; public UpdateThumbnailTask(final byte[] jpegData, boolean checkOrientation) { mJpegData = jpegData; @@ -805,6 +805,17 @@ public class CameraActivity extends Activity } else { updateThumbnail(bitmap); } + + mJpegData = null; + } + + @Override + protected void onCancelled(Bitmap bitmap) { + if(bitmap != null) + bitmap.recycle(); + + bitmap = null; + mJpegData = null; } private Bitmap decodeImageCenter(final String path) { -- cgit v1.2.3