From c0f924738de2b8f5478e8b454b4ad5521802f3f6 Mon Sep 17 00:00:00 2001 From: dvdli Date: Thu, 28 Jan 2021 11:53:30 +0800 Subject: prepare in pcm_generic_transfer --- src/pcm.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src') diff --git a/src/pcm.c b/src/pcm.c index 8678919..3d7da0c 100644 --- a/src/pcm.c +++ b/src/pcm.c @@ -1637,6 +1637,10 @@ static int pcm_generic_transfer(struct pcm *pcm, void *data, if (frames > INT_MAX) return -EINVAL; + if (pcm_state(pcm) == PCM_STATE_SETUP && pcm_prepare(pcm) != 0) { + return -1; + } + again: if (pcm->flags & PCM_MMAP) -- cgit v1.2.3