diff options
author | Takashi Iwai <tiwai@suse.de> | 2007-11-12 12:33:31 +0100 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2007-11-12 12:33:31 +0100 |
commit | c1027970c49988368a46d887dc7f608d53b14d90 (patch) | |
tree | 029accfbba3d7d36973984b0a857c74d4056670c | |
parent | 9883345a35b5a146c917c5df7e15430b2d500190 (diff) |
Fix wrong assert in pulse plugin
assert(!pcm->stream) shouldn't be checked when the PCM state is
SETUP, too (ALSA bug#3470).
The original patch by Mike Gorse <mgorse@mgorse.dhs.org>
-rw-r--r-- | pulse/pcm_pulse.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/pulse/pcm_pulse.c b/pulse/pcm_pulse.c index 7d8f59e..67f97b5 100644 --- a/pulse/pcm_pulse.c +++ b/pulse/pcm_pulse.c @@ -497,8 +497,16 @@ static int pulse_hw_params(snd_pcm_ioplug_t *io, snd_pcm_hw_params_t *params) assert(pcm->p); //Resolving bugtrack ID 0003470 - if(!(base && snd_pcm_state(base) == SND_PCM_STATE_PREPARED)) - assert(!pcm->stream); + if (!base) { + switch (snd_pcm_state(base)) { + case SND_PCM_STATE_SETUP: + case SND_PCM_STATE_PREPARED: + break; + default: + assert(!pcm->stream); + break; + } + } pa_threaded_mainloop_lock(pcm->p->mainloop); |