Update of /cvsroot/alsa/alsa-kernel/core/oss
In directory sc8-pr-cvs1:/tmp/cvs-serv3271/core/oss
Modified Files:
mixer_oss.c
Log Message:
try to change the non-exclusive capture elements even if the exclusive
"capture route" is found. this will fix the problem of double-entry
of "mic capture" mixer elements.
Index: mixer_oss.c
===================================================================
RCS file: /cvsroot/alsa/alsa-kernel/core/oss/mixer_oss.c,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -r1.20 -r1.21
--- mixer_oss.c 31 Jan 2003 15:19:31 -0000 1.20
+++ mixer_oss.c 27 Mar 2003 10:15:46 -0000 1.21
@@ -204,6 +204,8 @@
static int snd_mixer_oss_set_recsrc(snd_mixer_oss_file_t *fmixer, int recsrc)
{
snd_mixer_oss_t *mixer = fmixer->mixer;
+ snd_mixer_oss_slot_t *pslot;
+ int chn, active;
int result = 0;
if (mixer == NULL)
@@ -214,16 +216,15 @@
mixer->put_recsrc(fmixer, ffz(~recsrc));
mixer->get_recsrc(fmixer, &result);
result = 1 << result;
- } else {
- snd_mixer_oss_slot_t *pslot;
- int chn, active;
- for (chn = 0; chn < 31; chn++) {
- pslot = &mixer->slots[chn];
- if (pslot->put_recsrc) {
- active = (recsrc & (1 << chn)) ? 1 : 0;
- pslot->put_recsrc(fmixer, pslot, active);
- }
+ }
+ for (chn = 0; chn < 31; chn++) {
+ pslot = &mixer->slots[chn];
+ if (pslot->put_recsrc) {
+ active = (recsrc & (1 << chn)) ? 1 : 0;
+ pslot->put_recsrc(fmixer, pslot, active);
}
+ }
+ if (! result) {
for (chn = 0; chn < 31; chn++) {
pslot = &mixer->slots[chn];
if (pslot->get_recsrc) {
-------------------------------------------------------
This SF.net email is sponsored by:
The Definitive IT and Networking Event. Be There!
NetWorld+Interop Las Vegas 2003 -- Register today!
http://ads.sourceforge.net/cgi-bin/redirect.pl?keyn0001en
_______________________________________________
Alsa-cvslog mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-cvslog