summaryrefslogtreecommitdiff
path: root/extra/gnome-control-center/pulse3.0.patch
blob: 203547940a0cacf6c070256f103a53b36846c0f4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
From 10a0c18b8e3058144586880019b68ab4ea40ce78 Mon Sep 17 00:00:00 2001
From: David Henningsson <david.henningsson@canonical.com>
Date: Fri, 07 Dec 2012 10:52:09 +0000
Subject: sound: Fix port handling for the unknown availability case

The current code assumes that port availability transitions will be
between YES and NO, and doesn't account for the fact that it may also be
UNKNOWN. This causes spurious entries if the port availability
transitions between YES and UNKNOWN.
---
diff --git a/panels/sound/gvc-mixer-control.c b/panels/sound/gvc-mixer-control.c
index 34ddc0c..2f6cf34 100644
--- a/panels/sound/gvc-mixer-control.c
+++ b/panels/sound/gvc-mixer-control.c
@@ -2138,7 +2138,7 @@ update_card (GvcMixerControl      *control,
                 else {
                         for (i = 0; i < info->n_ports; i++) {
                                 if (g_strcmp0 (card_port->port, info->ports[i]->name) == 0) {
-                                        if (card_port->available != info->ports[i]->available) {
+                                        if ((card_port->available == PA_PORT_AVAILABLE_NO) !=  (info->ports[i]->available == PA_PORT_AVAILABLE_NO)) {
                                                 card_port->available = info->ports[i]->available;
                                                 g_debug ("sync port availability on card %i, card port name '%s', new available value %i",
                                                           gvc_mixer_card_get_index (card),
--
cgit v0.9.0.2