Rockbox mail archive
Subject: Re: usb.c warning
>> Hi,
>>
>> Noticed a warning for this code in firmware/usb.c, line 557 (as of
>> r31578):
>>
>> status = (status == USB_INSERTED) ? : USB_EXTRACTED;
>>
>> According to the gcc manual (section 5.7), the expression "x ? : y" (a
>> gcc extension) has the value x if x is nonzero, otherwise z. So, status
>> is set to "true" or "USB_EXTRACTED". In this case, true happens to have
>> the same value as USB_INSERTED... Is that what was intended here?
>>
>> --
>> Magnus
>
> Yes. It's just like "status = (status == USB_INSERTED) ? status :
> USB_EXTRACTED;"
>
Oops. Stupid top post.
Anyway, I guess it could just be:
if (status != USB_INSERTED)
status = USB_EXTRACED;
At least that's more familiar.
Received on 2012-01-04
Page was last modified "Jan 10 2012" The Rockbox Crew
|