8 Dec
2015
8 Dec
'15
12:22 p.m.
Takashi Sakamoto wrote:
+static void transmit_midi_msg(struct snd_ff *ff, unsigned int port) ...
- /* Retrieve one MIDI byte to calculate length of the message. */
- len = snd_rawmidi_transmit_peek(substream, buf,
SND_FF_MAXIMIM_MIDI_QUADS);
SND_FF_MAXIMIM_MIDI_QUADS does not have the value 1.
/* Calculate consume bytes. */
consume = calculate_message_bytes(status);
if (consume <= 0)
return;
As far as I can see, sending one of the "undefined" bytes can stop the stream permanently. Invalid bytes need to be acked to ignore/remove them.
Regards, Clemens