NULL previous background bitmap upon changing wallpaper
Step to reproduce it on Nexus 10 with 4.4.2(KOT49H): 1. Long press on home screen. 2. Choose wallpaper from Wallpapers. 3. Select new wallpaper and set it. 4. Repeat step 1-3 several times. See black background instead of the wallpaper. There are two binder objects who hold reference to the ImageWallpaper$DrawableEngine, which keeps the big chunk bitmap from being recycled. One is WallpaperService$IWallpaperEngineWrapper. The client references went away slowly, maybe several minutes after changing wallpaper. Then the finalizer has to been executed to GC it. The other one is WallpaperService$Engine$BaseIWindow. Don't know who still held reference to it even after the window was removed. Anyway, let the bitmap be GCed first. Change-Id: I27f6971a3edd26472b69e59b542b27fd7c8e7b90 Signed-off-by:<jshe32X<jianchunx.shen@intel.com> Signed-off-by:
Guobin Zhang <guobin.zhang@intel.com>
Loading
Please register or sign in to comment