[pulseaudio-commits] src/modules

Tanu Kaskinen tanuk at kemper.freedesktop.org
Fri Oct 23 04:41:52 PDT 2015


 src/modules/alsa/alsa-mixer.c |    6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

New commits:
commit fcbbe34e001b9bee3e73a663e9bf9ddc11c0a1d5
Author: David Henningsson <david.henningsson at canonical.com>
Date:   Mon Oct 19 11:16:37 2015 +0200

    alsa-mixer: Ignore volume with unexpected number of channels
    
    We currently only support one and two channels for volumes, and
    bail out otherwise. This makes Xonar users unhappy because they
    have a volume with eight channels, and bailing out means they
    don't have a path/port at all.
    
    This way they will at least have a port, which will in turn make
    the gnome/unity UI behave better.
    
    BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=84983
    BugLink: https://bugzilla.gnome.org/show_bug.cgi?id=745017
    Signed-off-by: David Henningsson <david.henningsson at canonical.com>

diff --git a/src/modules/alsa/alsa-mixer.c b/src/modules/alsa/alsa-mixer.c
index 9e06ba4..486da83 100644
--- a/src/modules/alsa/alsa-mixer.c
+++ b/src/modules/alsa/alsa-mixer.c
@@ -1743,10 +1743,10 @@ static int element_probe(pa_alsa_element *e, snd_mixer_t *m) {
 
                     if (e->n_channels <= 0) {
                         pa_log_warn("Volume element %s with no channels?", e->alsa_name);
-                        return -1;
+                        e->volume_use = PA_ALSA_VOLUME_IGNORE;
                     }
 
-                    if (e->n_channels > 2) {
+                    else if (e->n_channels > 2) {
                         /* FIXME: In some places code like this is used:
                          *
                          *     e->masks[alsa_channel_ids[p]][e->n_channels-1]
@@ -1759,7 +1759,7 @@ static int element_probe(pa_alsa_element *e, snd_mixer_t *m) {
                          * don't support elements with more than two
                          * channels... */
                         pa_log_warn("Volume element %s has %u channels. That's too much! I can't handle that!", e->alsa_name, e->n_channels);
-                        return -1;
+                        e->volume_use = PA_ALSA_VOLUME_IGNORE;
                     }
 
                     if (!e->override_map) {



More information about the pulseaudio-commits mailing list