diff options
| -rw-r--r-- | services/core/java/com/android/server/PackageWatchdog.java | 13 | ||||
| -rw-r--r-- | tests/PackageWatchdog/TEST_MAPPING | 7 |
2 files changed, 16 insertions, 4 deletions
diff --git a/services/core/java/com/android/server/PackageWatchdog.java b/services/core/java/com/android/server/PackageWatchdog.java index 67f6ec9f9a41..f5c2aacaebb0 100644 --- a/services/core/java/com/android/server/PackageWatchdog.java +++ b/services/core/java/com/android/server/PackageWatchdog.java @@ -259,10 +259,7 @@ public class PackageWatchdog { mIsPackagesReady = true; mHealthCheckController.setCallbacks(packageName -> onHealthCheckPassed(packageName), packages -> onSupportedPackages(packages), - () -> { - syncRequestsAsync(); - mSyncRequired = true; - }); + this::onSyncRequestNotified); setPropertyChangedListenerLocked(); updateConfigs(); registerConnectivityModuleHealthListener(); @@ -537,6 +534,7 @@ public class PackageWatchdog { synchronized (mLock) { mIsHealthCheckEnabled = enabled; mHealthCheckController.setEnabled(enabled); + mSyncRequired = true; // Prune to update internal state whenever health check is enabled/disabled syncState("health check state " + (enabled ? "enabled" : "disabled")); } @@ -788,6 +786,13 @@ public class PackageWatchdog { } } + private void onSyncRequestNotified() { + synchronized (mLock) { + mSyncRequired = true; + syncRequestsAsync(); + } + } + @GuardedBy("mLock") private Set<String> getPackagesPendingHealthChecksLocked() { Set<String> packages = new ArraySet<>(); diff --git a/tests/PackageWatchdog/TEST_MAPPING b/tests/PackageWatchdog/TEST_MAPPING new file mode 100644 index 000000000000..6494a273eced --- /dev/null +++ b/tests/PackageWatchdog/TEST_MAPPING @@ -0,0 +1,7 @@ +{ + "presubmit": [ + { + "name": "PackageWatchdogTest" + } + ] +} |