diff options
| author | Diogo Ferreira <diogo@underdev.org> | 2015-03-28 21:46:52 +0000 |
|---|---|---|
| committer | Diogo Ferreira <diogo@underdev.org> | 2015-03-30 17:37:41 +0100 |
| commit | eb9a7711786bd6b913975d0d6d39a555e3b9cef8 (patch) | |
| tree | 56582e0e47ac55591ae6604b614120b59f97e4be | |
| parent | 263fead3b1cc2a2c5947afed2940a6d9698be81b (diff) | |
| download | android_packages_wallpapers_Basic-stable/cm-11.0-XNG3C.tar.gz android_packages_wallpapers_Basic-stable/cm-11.0-XNG3C.tar.bz2 android_packages_wallpapers_Basic-stable/cm-11.0-XNG3C.zip | |
PolarClock: Don't draw on invisible surfacesstable/cm-11.0-XNG3Cstable/cm-11.0-XNG2Scm-11.0
This sometimes crashes the device when the activity is recreated
due to rotation or other reconfigurations.
In some events, namely when the surface visibility changes we
were drawing a frame which, depending on timing, might end up
locking/drawing/unlocking a surface that was previously destroyed
which would crash the app.
Change-Id: I6c4381ce03882658307386a351336894845966e3
| -rw-r--r-- | src/com/android/wallpaper/polarclock/PolarClockWallpaper.java | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/com/android/wallpaper/polarclock/PolarClockWallpaper.java b/src/com/android/wallpaper/polarclock/PolarClockWallpaper.java index cba7b11..2ea62de 100644 --- a/src/com/android/wallpaper/polarclock/PolarClockWallpaper.java +++ b/src/com/android/wallpaper/polarclock/PolarClockWallpaper.java @@ -462,6 +462,10 @@ public class PolarClockWallpaper extends WallpaperService { return; } + if (!mVisible) { + return; + } + final SurfaceHolder holder = getSurfaceHolder(); final Rect frame = holder.getSurfaceFrame(); final int width = frame.width(); |
