summaryrefslogtreecommitdiffstats
path: root/src/com/android/camera/data/LocalDataList.java
diff options
context:
space:
mode:
authorSuman Mukherjee <sumam@codeaurora.org>2014-06-09 17:17:44 +0530
committerSuman Mukherjee <sumam@codeaurora.org>2014-06-09 17:17:44 +0530
commitbfdbd64ee7e4bbfead91366ccea218258a8ec845 (patch)
tree53c09ca1531fdd72c8e8080447b55ae6a32cf581 /src/com/android/camera/data/LocalDataList.java
parent24a14562871c2f3277aadb5b0388ebf5b5e278dd (diff)
downloadandroid_packages_apps_Snap-bfdbd64ee7e4bbfead91366ccea218258a8ec845.tar.gz
android_packages_apps_Snap-bfdbd64ee7e4bbfead91366ccea218258a8ec845.tar.bz2
android_packages_apps_Snap-bfdbd64ee7e4bbfead91366ccea218258a8ec845.zip
Camera: Mem-leak
Hprof identified memleak in localdatalist from list and hashmap Reason: removedata was not getting invoked. Fix Made: Invoke removedata from ondestroy and onresume of camera activity Cleanup bitmaps before reallocation on same variable. CRs-Fixed: 655256 Change-Id: I42d99beb7e493eea2394462ee02cbe956e86c502
Diffstat (limited to 'src/com/android/camera/data/LocalDataList.java')
-rw-r--r--src/com/android/camera/data/LocalDataList.java10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/com/android/camera/data/LocalDataList.java b/src/com/android/camera/data/LocalDataList.java
index 3ccc4de54..7e6fc453d 100644
--- a/src/com/android/camera/data/LocalDataList.java
+++ b/src/com/android/camera/data/LocalDataList.java
@@ -64,6 +64,16 @@ public class LocalDataList {
return mUriMap.get(uri);
}
+ public void cleanup() {
+ if ((mList != null) && (mList.size() > 0)) {
+ for(int i=0;i<mList.size();i++) {
+ remove(i);
+ }
+ }
+ mList = null;
+ mUriMap = null;
+ }
+
public void set(int pos, LocalData data) {
mList.set(pos, data);
mUriMap.put(data.getContentUri(), data);