2012-05-21 15:31:27

by Frederic Danis

[permalink] [raw]
Subject: [PATCH] audio: Fix media transport creation

Prevents set_configuration() to be called on another adapter
than connecting one
---
audio/media.c | 3 +++
1 file changed, 3 insertions(+)

diff --git a/audio/media.c b/audio/media.c
index 427087a..8b29ac7 100644
--- a/audio/media.c
+++ b/audio/media.c
@@ -491,6 +491,9 @@ static void headset_state_changed(struct audio_device *dev,
}
break;
case HEADSET_STATE_CONNECTING:
+ if (bacmp(&endpoint->adapter->src, &dev->src) != 0)
+ break;
+
set_configuration(endpoint, dev, NULL, 0, headset_setconf_cb,
dev, NULL);
break;
--
1.7.9.5



2012-05-22 13:40:33

by Luiz Augusto von Dentz

[permalink] [raw]
Subject: Re: [PATCH] audio: Fix media transport creation

Hi Frederic,

On Mon, May 21, 2012 at 6:31 PM, Fr?d?ric Danis
<[email protected]> wrote:
> Prevents set_configuration() to be called on another adapter
> than connecting one
> ---
> ?audio/media.c | ? ?3 +++
> ?1 file changed, 3 insertions(+)
>
> diff --git a/audio/media.c b/audio/media.c
> index 427087a..8b29ac7 100644
> --- a/audio/media.c
> +++ b/audio/media.c
> @@ -491,6 +491,9 @@ static void headset_state_changed(struct audio_device *dev,
> ? ? ? ? ? ? ? ?}
> ? ? ? ? ? ? ? ?break;
> ? ? ? ?case HEADSET_STATE_CONNECTING:
> + ? ? ? ? ? ? ? if (bacmp(&endpoint->adapter->src, &dev->src) != 0)
> + ? ? ? ? ? ? ? ? ? ? ? break;
> +
> ? ? ? ? ? ? ? ?set_configuration(endpoint, dev, NULL, 0, headset_setconf_cb,
> ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?dev, NULL);
> ? ? ? ? ? ? ? ?break;
> --
> 1.7.9.5

This patch is now applied, Ive just moved the check to the beginning
of the function and also fixed gateway_state_changed that was doing
the same.

--
Luiz Augusto von Dentz