From a576959497e78b4094dbe901f39699b8e6326ffe Mon Sep 17 00:00:00 2001 From: Phil Burk Date: Fri, 27 Mar 2020 17:56:57 -0700 Subject: [PATCH] BluetoothMidi: ignore reserved bit in header The BLE-MIDI spec defines bit 6 as reserved. The decoder was checking to make sure it was zero. But that would prevent it from being used in the future. So now it ignores the reserved bit. Bug: 149927520 Test: atest BluetoothMidiTests Change-Id: Ibd2054c4dbf01941da56727b49dec23dc65088c0 --- .../android/bluetoothmidiservice/BluetoothPacketDecoder.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/media/packages/BluetoothMidiService/src/com/android/bluetoothmidiservice/BluetoothPacketDecoder.java b/media/packages/BluetoothMidiService/src/com/android/bluetoothmidiservice/BluetoothPacketDecoder.java index c51c8fa73c4eb..8d18b77700b51 100644 --- a/media/packages/BluetoothMidiService/src/com/android/bluetoothmidiservice/BluetoothPacketDecoder.java +++ b/media/packages/BluetoothMidiService/src/com/android/bluetoothmidiservice/BluetoothPacketDecoder.java @@ -70,7 +70,9 @@ public class BluetoothPacketDecoder extends PacketDecoder { } byte header = buffer[0]; - if ((header & 0xC0) != 0x80) { + // Check for the header bit 7. + // Ignore the reserved bit 6. + if ((header & 0x80) != 0x80) { Log.e(TAG, "packet does not start with header"); return; }