summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author lijilou <lijilou@xiaomi.corp-partner.google.com> 2024-05-10 14:44:20 +0800
committer Pinyao Ting <pinyaoting@google.com> 2024-05-10 17:05:39 +0000
commitbb05e5fed430bfbb9f11aed3b2d0cf3b26f68304 (patch)
treedc8a516cb2046d8d554ffd1a5c2b0d3461415469
parentf51a4c835b8e153fe0032ed2175fb84d25023332 (diff)
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 Test: manual Change-Id: I00f8c12b5dec00eac6e50e2ef755742db3fe4521
-rw-r--r--services/appwidget/java/com/android/server/appwidget/AppWidgetServiceImpl.java4
1 files changed, 3 insertions, 1 deletions
diff --git a/services/appwidget/java/com/android/server/appwidget/AppWidgetServiceImpl.java b/services/appwidget/java/com/android/server/appwidget/AppWidgetServiceImpl.java
index 522aa6703b51..412d202cdff6 100644
--- a/services/appwidget/java/com/android/server/appwidget/AppWidgetServiceImpl.java
+++ b/services/appwidget/java/com/android/server/appwidget/AppWidgetServiceImpl.java
@@ -5681,7 +5681,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);