diff options
| author | 2022-03-22 16:41:33 +0000 | |
|---|---|---|
| committer | 2022-03-22 16:41:33 +0000 | |
| commit | c46b17eff00bf06c8ae22007069c54f66fa595a3 (patch) | |
| tree | ba9266c5da675a2803eb79fd3748bbb4a3790003 | |
| parent | 3b47535d8f9bedb0a6b5937f43a1f8b9043eb579 (diff) | |
| parent | da2247faf874be2fd3de4e10b3a2be64bb7096c2 (diff) | |
Merge "MidiService: clear status when device unbound" into sc-v2-dev am: da2247faf8
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17239105
Change-Id: I8f6018f47d780d2d17e6833b69b82c9f53ee9f08
| -rw-r--r-- | services/midi/java/com/android/server/midi/MidiService.java | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/services/midi/java/com/android/server/midi/MidiService.java b/services/midi/java/com/android/server/midi/MidiService.java index d0205ae24f85..ca31efcdf3d2 100644 --- a/services/midi/java/com/android/server/midi/MidiService.java +++ b/services/midi/java/com/android/server/midi/MidiService.java @@ -340,6 +340,11 @@ public class MidiService extends IMidiManager.Stub { IBinder binder = server.asBinder(); mDevicesByServer.remove(binder); + // Clearing mDeviceStatus is needed because setDeviceStatus() + // relies on finding the device in mDevicesByServer. + // So the status can no longer be updated after we remove it. + // Then we can end up with input ports that are stuck open. + mDeviceStatus = null; try { server.closeDevice(); |