On Wed, Sep 01, 2010 at 05:40:35PM +0200, Alexandre Julliard wrote:
> Jeff Cook <[email protected]> writes:
>
> > @@ -520,7 +520,12 @@ static void ALSA_MixerInit(void)
> > }
> >
> > /* Add master channel, uncounted channels and an extra for capture
> > */
> > - mixdev[mixnum].chans += !!mastelem + !!headelem + !!pcmelem + 1;
> > + /* Do not add the extra channel needed for capture on half-duplex
> > capture cards
> > + like snd_usb_audio mics */
> > + if (micelem && !mastelem && !captelem)
> > + mixdev[mixnum].chans += !!mastelem + !!headelem + !!pcmelem +
> > !!micelem;
> > + else
> > + mixdev[mixnum].chans += !!mastelem + !!headelem + !!pcmelem +
> > !!micelem + 1;
>
> This statement wasn't exactly clear before, but now it's really
> impossible to follow. Please rewrite this in a way that makes sense to a
> casual reader.
Clearly it should be:
mixdev[mixnum].chans += !!mastelem + !!headelem + !!pcmelem + (micelem
&& !mastelem && !captelem);
ducks quickly ... :-)
David
--
David Laight: [email protected]