From fc18306cc454c3af386b9219a146a70aa3b502e5 Mon Sep 17 00:00:00 2001
From: Todd Lee <leetodd@google.com>
Date: Tue, 14 May 2024 19:34:59 +0000
Subject: [PATCH] Ensure wallpaper surface is valid (not released) before
 dimming

Flag: NONE - just adding surface validation check
Bug: b/324659948
Test: check wallpaper detach/no crash
Change-Id: If991d255f7d3962661c94d4f626524b4012d29ab
---
 core/java/android/service/wallpaper/WallpaperService.java | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/core/java/android/service/wallpaper/WallpaperService.java b/core/java/android/service/wallpaper/WallpaperService.java
index d174bef90f9c..95897855586d 100644
--- a/core/java/android/service/wallpaper/WallpaperService.java
+++ b/core/java/android/service/wallpaper/WallpaperService.java
@@ -1025,7 +1025,8 @@ public abstract class WallpaperService extends Service {
             mWallpaperDimAmount = (!mShouldDimByDefault) ? mCustomDimAmount
                     : Math.max(mDefaultDimAmount, mCustomDimAmount);
 
-            if (!ENABLE_WALLPAPER_DIMMING || mBbqSurfaceControl == null
+            if (!ENABLE_WALLPAPER_DIMMING
+                    || mBbqSurfaceControl == null || !mBbqSurfaceControl.isValid()
                     || mWallpaperDimAmount == mPreviousWallpaperDimAmount) {
                 return;
             }
-- 
GitLab