summaryrefslogtreecommitdiffstats
path: root/services/java/com/android/server/WallpaperManagerService.java
diff options
context:
space:
mode:
authorVairavan Srinivasan <vairav@codeaurora.org>2010-12-23 14:05:44 -0800
committerVairavan Srinivasan <vairav@codeaurora.org>2010-12-23 14:05:44 -0800
commitfdfc1b27fe7a02d07931e6edb1d9bdae67b84eda (patch)
tree4015e9c9cfa5de66d884217040f910e8054c69bf /services/java/com/android/server/WallpaperManagerService.java
parent3b10aea50c1044ff33d02727829c47c061f6e1c8 (diff)
downloadframeworks_base-fdfc1b27fe7a02d07931e6edb1d9bdae67b84eda.zip
frameworks_base-fdfc1b27fe7a02d07931e6edb1d9bdae67b84eda.tar.gz
frameworks_base-fdfc1b27fe7a02d07931e6edb1d9bdae67b84eda.tar.bz2
frameworks/base: Fix to release references to previous live wallpaper
The service connection to the previous live wallpaper is unbound when a new wallpaper is effective. Although the service connection is unbound it is not disconnected and its reference to wallpaper's service and engine is still effective. This adds up to the total JNI references and causes dalvik (hosting system_server) to abort. Fix is to release the references in clearWallpaperComponentLocked. Change-Id: Idd2bab83a56d2e6c6dd7ab9be08d5e14887aa384
Diffstat (limited to 'services/java/com/android/server/WallpaperManagerService.java')
-rw-r--r--services/java/com/android/server/WallpaperManagerService.java2
1 files changed, 2 insertions, 0 deletions
diff --git a/services/java/com/android/server/WallpaperManagerService.java b/services/java/com/android/server/WallpaperManagerService.java
index 859c85c..997e750 100644
--- a/services/java/com/android/server/WallpaperManagerService.java
+++ b/services/java/com/android/server/WallpaperManagerService.java
@@ -587,6 +587,8 @@ class WallpaperManagerService extends IWallpaperManager.Stub {
mIWindowManager.removeWindowToken(mWallpaperConnection.mToken);
} catch (RemoteException e) {
}
+ mWallpaperConnection.mService = null;
+ mWallpaperConnection.mEngine = null;
mWallpaperConnection = null;
}
}