Repro step:
1. requestMIDIAccess()
2. requestMIDIAccess({'sysex': true}) after 1 was resolved
3. send sysex over the second MIDIAccess instance
Browser detects sysex of 3. as wrong requests, and kills the renderer.
This is because the current implementation shares the same session within the renderer process, and its permission is bound to the first request.
If the first request obtains the permission, Blink side client rejects/drops unauthorized MIDI messages per MIDIAccess basis correctly. But if the first request does not, permission for the shared session is not upgraded correctly.
Comment 1 by toyoshim@chromium.org
, Dec 6