rawmidi: free framing read bufffer when the framing mode becomes inactive

Signed-off-by: Jaroslav Kysela <perex@perex.cz>
This commit is contained in:
Jaroslav Kysela 2021-10-05 14:54:59 +02:00
parent c932c1e7ab
commit 392d5b06f8

View file

@ -114,6 +114,12 @@ static int snd_rawmidi_hw_params(snd_rawmidi_t *rmidi, snd_rawmidi_params_t * pa
return -errno; return -errno;
} }
buf_reset(hw); buf_reset(hw);
if (hw->buf &&
((params->mode & SNDRV_RAWMIDI_MODE_FRAMING_MASK) != SNDRV_RAWMIDI_MODE_FRAMING_TSTAMP)) {
free(hw->buf);
hw->buf = NULL;
hw->buf_size = 0;
}
return 0; return 0;
} }