Subject: Re: [Suggestion] Bluetooth: hidp: redundant initialization or issue for function hidp_copy_session

From: Chen Gang <[email-masked]>
Date: Wed, 08 May 2013 09:50:25 +0800

On 2013年05月08日 03:37, David Herrmann wrote:
> Hi
> 
> On Tue, May 7, 2013 at 4:08 PM, Chen Gang <[email-masked]> wrote:
>> Hello Maintainers:
>>
>> In net/bluetooth/hidp/core.c, for hidp_copy_session(), the
>> 'session->input' and 'session->hid' are conflict with each other.
>>
>> And excuse me, I do not quit know the details, but I think we have 2
>> choices for fixing it:
>>
>>   one is ''if (session->input) { } else if (session->hid) { };''
>>   the other is ''if (seesion->hid) { } else if (session->input) { };''
>>
>> The first choice assumes the original code has a logical issue; the
>> second choice assumes the original code has redundant initialization.
> 
> The code is fine. Only one of "->input" or "->hid" can be valid at a
> time. And exactly one of them is guaranteed to be valid. See
> hidp_session_dev_init().
> 

Oh, really it is, thanks.

> I fixed all code that I changed during the rework to say:
> 
> if (session->hid)
> ..
> else if (session->input)
> ..
> 
> It makes the code more clear. But I avoided touching all the other
> places that I didn't change, as the code is technically right. Anyway,
> I don't care whether we want to fix all other occurrences to use "else
> if". Feel free to send a patch.
> 

Me too: "avoided touching all the other places that I didn't change, as
the code is technically right".

Thanks.

-- 
Chen Gang

Asianux Corporation