From bfcca8bc61bb6068427821958d91d3fc5f11fbe7 Mon Sep 17 00:00:00 2001
From: lijilou <lijilou@xiaomi.corp-partner.google.com>
Date: Fri, 10 May 2024 14:44:20 +0800
Subject: [PATCH] AppWidgetServiceImpl:fix NPE in pruneWidgetStateLocked mthod
 .

  When the hostsPackageForUser method return true,No nonNull judgment is made on the provider var which may be a null var.

Bug: 339747311

Merged-In: I00f8c12b5dec00eac6e50e2ef755742db3fe4521
Change-Id: I00f8c12b5dec00eac6e50e2ef755742db3fe4521
---
 .../com/android/server/appwidget/AppWidgetServiceImpl.java    | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/services/appwidget/java/com/android/server/appwidget/AppWidgetServiceImpl.java b/services/appwidget/java/com/android/server/appwidget/AppWidgetServiceImpl.java
index a4b28967e3b2..96ae7904d57e 100644
--- a/services/appwidget/java/com/android/server/appwidget/AppWidgetServiceImpl.java
+++ b/services/appwidget/java/com/android/server/appwidget/AppWidgetServiceImpl.java
@@ -5084,7 +5084,9 @@ class AppWidgetServiceImpl extends IAppWidgetService.Stub implements WidgetBacku
                         // so we tear it down in anticipation of it (possibly) being
                         // reconstructed due to the restore
                         host.widgets.remove(widget);
-                        provider.widgets.remove(widget);
+                        if (provider != null) {
+                            provider.widgets.remove(widget);
+                        }
                         // Check if we need to destroy any services (if no other app widgets are
                         // referencing the same service)
                         decrementAppWidgetServiceRefCount(widget);
-- 
GitLab