pcm: fix return value of snd_pcm_ioplug_sw_params()

In former commits for thread-safe PCM APIs, snd_pcm_ioplug_sw_params() got
0 as its return value, against the original implementation.

This commit fixes it.

Fixes: 54931e5a5455('pcm: Add thread-safety to PCM API')
Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
Takashi Sakamoto 2016-07-13 23:15:23 +09:00 committed by Takashi Iwai
parent 4c124b0759
commit 941bd150be

View file

@ -434,14 +434,16 @@ static int snd_pcm_ioplug_hw_free(snd_pcm_t *pcm)
static int snd_pcm_ioplug_sw_params(snd_pcm_t *pcm, snd_pcm_sw_params_t *params)
{
ioplug_priv_t *io = pcm->private_data;
int err = 0;
int err;
if (io->data->callback->sw_params) {
snd_pcm_unlock(pcm); /* to avoid deadlock */
err = io->data->callback->sw_params(io->data, params);
snd_pcm_lock(pcm);
}
return 0;
if (!io->data->callback->sw_params)
return 0;
snd_pcm_unlock(pcm); /* to avoid deadlock */
err = io->data->callback->sw_params(io->data, params);
snd_pcm_lock(pcm);
return err;
}