On Wed, 19 Oct 2016 08:10:28 +0200, Michael Forney wrote: > > Otherwise, they will linger after the error is returned (but pcm->setup == 0). > Then, if the caller tries to clean up and call snd_pcm_close(), the assertion > plug->gen.slave == plug->req_slave will fail. The changes look OK, but could you give your sign-off? thanks, Takashi > --- > src/pcm/pcm_plug.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/src/pcm/pcm_plug.c b/src/pcm/pcm_plug.c > index 5639b9e..266707b 100644 > --- a/src/pcm/pcm_plug.c > +++ b/src/pcm/pcm_plug.c > @@ -652,8 +652,10 @@ static int snd_pcm_plug_insert_plugins(snd_pcm_t *pcm, > (plug->ttable && !plug->ttable_ok)) { > snd_pcm_t *new; > int err; > - if (k >= sizeof(funcs)/sizeof(*funcs)) > + if (k >= sizeof(funcs)/sizeof(*funcs)) { > + snd_pcm_plug_clear(pcm); > return -EINVAL; > + } > err = funcs[k](pcm, &new, client, &p); > if (err < 0) { > snd_pcm_plug_clear(pcm); > -- > 2.10.1 > _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel