summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMikhail Naganov <mnaganov@google.com>2022-08-11 00:05:09 +0000
committerMikhail Naganov <mnaganov@google.com>2022-08-11 00:20:50 +0000
commit1c9ea30bd7be59b5e85329a18a0b831156a5d73f (patch)
tree904b5f1c012fb55dbd4987ed5a20295bcd760a80
parent621c7b69460831682749537a1de09c21ec85de56 (diff)
downloadbase-1c9ea30bd7be59b5e85329a18a0b831156a5d73f.tar.gz
AudioService: RecordActivityMonitor: fix unbounded list growth
This CL fixes the growing list of Dispatchers in RecordActivityMonitor by comparing dispatcher callback via asBinder() method of the interface. Bug: 242056995 Test: use the repro app from the bug Change-Id: I3a2674dd339b84ecff609eef042ca41484a43255
-rw-r--r--services/core/java/com/android/server/audio/RecordingActivityMonitor.java2
1 files changed, 1 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/audio/RecordingActivityMonitor.java b/services/core/java/com/android/server/audio/RecordingActivityMonitor.java
index 26a63120d793..5620dc36c971 100644
--- a/services/core/java/com/android/server/audio/RecordingActivityMonitor.java
+++ b/services/core/java/com/android/server/audio/RecordingActivityMonitor.java
@@ -337,7 +337,7 @@ public final class RecordingActivityMonitor implements AudioSystem.AudioRecordin
boolean hasPublicClients = false;
while (clientIterator.hasNext()) {
RecMonitorClient rmc = clientIterator.next();
- if (rcdb.equals(rmc.mDispatcherCb)) {
+ if (rcdb.asBinder().equals(rmc.mDispatcherCb.asBinder())) {
rmc.release();
clientIterator.remove();
} else {