summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorDoris Liu <tianliu@google.com>2013-02-07 12:32:42 -0800
committerDoris Liu <tianliu@google.com>2013-02-07 12:34:29 -0800
commit4e72c9098e96866fe9d7612c197a5b26f8f99d57 (patch)
treef4e85bf7d70254edb8a1b998f20f6ee74ed212f1 /src
parent465e25bd3cb2c76732102d7be98bc0335962f715 (diff)
downloadandroid_packages_apps_Snap-4e72c9098e96866fe9d7612c197a5b26f8f99d57.tar.gz
android_packages_apps_Snap-4e72c9098e96866fe9d7612c197a5b26f8f99d57.tar.bz2
android_packages_apps_Snap-4e72c9098e96866fe9d7612c197a5b26f8f99d57.zip
Fix memory leak in ComboPreferences
Bug: 8028546 Change-Id: I05246ba6675c62f89b1eaeb90d594dcb9aaf7185
Diffstat (limited to 'src')
-rw-r--r--src/com/android/camera/ComboPreferences.java7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/com/android/camera/ComboPreferences.java b/src/com/android/camera/ComboPreferences.java
index af1476eac..9155fb3eb 100644
--- a/src/com/android/camera/ComboPreferences.java
+++ b/src/com/android/camera/ComboPreferences.java
@@ -32,12 +32,14 @@ public class ComboPreferences implements
OnSharedPreferenceChangeListener {
private SharedPreferences mPrefGlobal; // global preferences
private SharedPreferences mPrefLocal; // per-camera preferences
- private BackupManager mBackupManager;
+ private String mPackageName;
private CopyOnWriteArrayList<OnSharedPreferenceChangeListener> mListeners;
+ // TODO: Remove this WeakHashMap in the camera code refactoring
private static WeakHashMap<Context, ComboPreferences> sMap =
new WeakHashMap<Context, ComboPreferences>();
public ComboPreferences(Context context) {
+ mPackageName = context.getPackageName();
mPrefGlobal = context.getSharedPreferences(
getGlobalSharedPreferencesName(context), Context.MODE_PRIVATE);
mPrefGlobal.registerOnSharedPreferenceChangeListener(this);
@@ -45,7 +47,6 @@ public class ComboPreferences implements
synchronized (sMap) {
sMap.put(context, this);
}
- mBackupManager = new BackupManager(context);
mListeners = new CopyOnWriteArrayList<OnSharedPreferenceChangeListener>();
// The global preferences was previously stored in the default
@@ -327,6 +328,6 @@ public class ComboPreferences implements
for (OnSharedPreferenceChangeListener listener : mListeners) {
listener.onSharedPreferenceChanged(this, key);
}
- mBackupManager.dataChanged();
+ BackupManager.dataChanged(mPackageName);
}
}