[v3 1/3] dinput: Print location ID in debugstr_device on the Mac

Ken Thomases ken at codeweavers.com
Sun Jul 10 17:14:41 CDT 2016


Hi,

Sorry for the late review.  See in-line comments:

On Jun 30, 2016, at 7:02 PM, David Lawrie <david.dljunk at gmail.com> wrote:
> 
> +static void get_device_property_long(IOHIDDeviceRef in_device, CFStringRef in_key, long * out_value)

As Dmitry suggested, you could make this simply return the property value rather than provide it through the indirect output parameter.

> +{
> +    Boolean result = FALSE;

This variable isn't really used.  It's assigned, but never read.

> +    CFTypeRef type;

This variable isn't holding a type, it's holding a value or, if you prefer, an object reference.  (The fact that its type is "CFTypeRef" doesn't imply it holds a type.  Frankly, "CFTypeRef" is also a lousy name, but that's on Apple.)

> +
> +    if (in_device)
> +    {
> +        assert(IOHIDDeviceGetTypeID() == CFGetTypeID(in_device));
> +
> +        type = IOHIDDeviceGetProperty(in_device, in_key);
> +
> +        if (type)
> +        {
> +            if (CFNumberGetTypeID() == CFGetTypeID(type))

You could combine these two "if" statements using &&.

-Ken




More information about the wine-devel mailing list