summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--core/java/android/service/wallpaper/WallpaperService.java7
1 files changed, 6 insertions, 1 deletions
diff --git a/core/java/android/service/wallpaper/WallpaperService.java b/core/java/android/service/wallpaper/WallpaperService.java
index 8f1fc1b9348e..5fab6678b938 100644
--- a/core/java/android/service/wallpaper/WallpaperService.java
+++ b/core/java/android/service/wallpaper/WallpaperService.java
@@ -2610,7 +2610,12 @@ public abstract class WallpaperService extends Service {
mActiveEngines.get(i).detach();
}
mActiveEngines.clear();
- mBackgroundThread.quitSafely();
+ if (mBackgroundThread != null) {
+ // onDestroy might be called without a previous onCreate if WallpaperService was
+ // instantiated manually. While this is a misuse of the API, some things break
+ // if here we don't take into consideration this scenario.
+ mBackgroundThread.quitSafely();
+ }
Trace.endSection();
}