diff options
author | Phil Burk <philburk@google.com> | 2021-07-15 18:08:37 +0000 |
---|---|---|
committer | Phil Burk <philburk@google.com> | 2021-07-17 19:03:57 +0000 |
commit | ad82a0fef52ac7967cfbe71b06b720a106b20102 (patch) | |
tree | 69c7659b6d31de9c50360278958a66f48871083c | |
parent | e850823da0be66f8ecff60eb01dfdd3b0134a9d0 (diff) |
MidiService: synchronize mDeviceConnections
Try to prevent a NullPointerException caused
by scanning the array while devices were being removed
by another thread.
Bug: 193278370
Test: atest CtsMidiTestCases
Change-Id: I8560cf6f39654037d5ccdc0f6922fa8bdb719c2f
-rw-r--r-- | services/midi/java/com/android/server/midi/MidiService.java | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/services/midi/java/com/android/server/midi/MidiService.java b/services/midi/java/com/android/server/midi/MidiService.java index e31be82bcff7..d0205ae24f85 100644 --- a/services/midi/java/com/android/server/midi/MidiService.java +++ b/services/midi/java/com/android/server/midi/MidiService.java @@ -350,8 +350,10 @@ public class MidiService extends IMidiManager.Stub { } if (mDeviceConnections != null) { - for (DeviceConnection connection : mDeviceConnections) { - connection.notifyClient(server); + synchronized (mDeviceConnections) { + for (DeviceConnection connection : mDeviceConnections) { + connection.notifyClient(server); + } } } } |