Re: [PATCH BlueZ] audio: Reset hfp and hs handle before connection

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Jaganath,

On Wed, May 02, 2012, Jaganath Kanakkassery wrote:
> When bluez initiates headset connection  hfp and hs handle is saved
> each time when initiating connection. So at some point if hf service
> is removed in remote headset then bluez connects to hs service. But
> because of previously stored hfp handle bluez thinks that connection
> made to hs service is hfp connection and waits for at commands.
> Eventually bluez connection state will be incorrectly set.
> ---
>  audio/headset.c |    2 ++
>  1 files changed, 2 insertions(+), 0 deletions(-)
> 
> diff --git a/audio/headset.c b/audio/headset.c
> index 04b26a9..27367d7 100644
> --- a/audio/headset.c
> +++ b/audio/headset.c
> @@ -1462,6 +1462,8 @@ static int headset_set_channel(struct headset *headset,
>  	}
>  
>  	headset->rfcomm_ch = ch;
> +	headset->hfp_handle = 0;
> +	headset->hsp_handle = 0;
>  
>  	if (svc == HANDSFREE_SVCLASS_ID) {
>  		headset->hfp_handle = record->handle;

I'd instead prefer something like the following:

        if (svc == HANDSFREE_SVCLASS_ID) {
                headset->hfp_handle = record->handle;
+               headset->hsp_handle = 0;
                DBG("Discovered Handsfree service on channel %d", ch);
        } else {
                headset->hsp_handle = record->handle;
+               headset->hfp_handle = 0;
                DBG("Discovered Headset service on channel %d", ch);
        }

Would that be ok?

Johan
--
To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux