From e4377b16454f3b7b222613a571bf4244ebd28e56 Mon Sep 17 00:00:00 2001 From: Jaroslav Kysela Date: Mon, 20 Mar 2017 08:41:53 +0100 Subject: [PATCH] dmix plugin: drain - quickfix for the previous patch --- src/pcm/pcm_dmix.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/pcm/pcm_dmix.c b/src/pcm/pcm_dmix.c index de00ea88..c64ae5fc 100644 --- a/src/pcm/pcm_dmix.c +++ b/src/pcm/pcm_dmix.c @@ -674,16 +674,16 @@ static int __snd_pcm_dmix_drain(snd_pcm_t *pcm) case SND_PCM_STATE_SUSPENDED: err = -ESTRPIPE; goto done; - case SND_PCM_STATE_DRAINING: - if (pcm->mode & SND_PCM_NONBLOCK) { - err = -EAGAIN; - goto done; - } - break; default: break; } } + if (pcm->mode & SND_PCM_NONBLOCK) { + if (dmix->state == SND_PCM_STATE_DRAINING) { + err = -EAGAIN; + goto done; + } + } } while (dmix->state == SND_PCM_STATE_DRAINING); done: pcm->stop_threshold = stop_threshold; -- 2.47.1