From 10a0c18b8e3058144586880019b68ab4ea40ce78 Mon Sep 17 00:00:00 2001 From: David Henningsson 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