From bfbf0e4b3b32f8e672a306d19bd83072c6ee0bee Mon Sep 17 00:00:00 2001 From: Raphael Kim Date: Fri, 14 Oct 2022 10:43:35 -0700 Subject: [PATCH] Ignore scheduled onDeviceGone call on simulated device if it is already no longer present. Bug: 253637009 Test: atest CtsCompanionDeviceManagerCoreTestCases atest CtsCompanionDeviceManagerUiAutomationTestCases Change-Id: Ia7f5eabde8879ff4f6bc5b5cc19455bbd4164ac9 --- .../companion/presence/CompanionDevicePresenceMonitor.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/services/companion/java/com/android/server/companion/presence/CompanionDevicePresenceMonitor.java b/services/companion/java/com/android/server/companion/presence/CompanionDevicePresenceMonitor.java index fb8c5b1a93977..41b62e639ad3b 100644 --- a/services/companion/java/com/android/server/companion/presence/CompanionDevicePresenceMonitor.java +++ b/services/companion/java/com/android/server/companion/presence/CompanionDevicePresenceMonitor.java @@ -363,7 +363,9 @@ public class CompanionDevicePresenceMonitor implements AssociationStore.OnChange @Override public void handleMessage(@NonNull Message msg) { final int associationId = msg.what; - onDeviceGone(mSimulated, associationId, /* sourceLoggingTag */ "simulated"); + if (mSimulated.contains(associationId)) { + onDeviceGone(mSimulated, associationId, /* sourceLoggingTag */ "simulated"); + } } } }