[PATCH 1/2] hid: Implement HidD_GetIndexedString().

Aric Stewart aric at codeweavers.com
Mon Apr 8 10:28:13 CDT 2019


Signed-off-by: Aric Stewart <aric at codeweavers.com>

On 4/6/19 10:20 PM, Zebediah Figura wrote:
> Mentioned in https://bugs.winehq.org/show_bug.cgi?id=46711.
> 
> Signed-off-by: Zebediah Figura <z.figura12 at gmail.com>
> ---
>   dlls/hid/hid.spec    | 2 +-
>   dlls/hid/hidd.c      | 6 ++++++
>   include/ddk/hidsdi.h | 1 +
>   3 files changed, 8 insertions(+), 1 deletion(-)
> 
> diff --git a/dlls/hid/hid.spec b/dlls/hid/hid.spec
> index e4d4202314..5bf391378b 100644
> --- a/dlls/hid/hid.spec
> +++ b/dlls/hid/hid.spec
> @@ -4,7 +4,7 @@
>   @ stub HidD_GetConfiguration
>   @ stdcall HidD_GetFeature(long ptr long)
>   @ stdcall HidD_GetHidGuid(ptr)
> -@ stub HidD_GetIndexedString
> +@ stdcall HidD_GetIndexedString(ptr long ptr long)
>   @ stdcall HidD_GetInputReport(long ptr long)
>   @ stdcall HidD_GetManufacturerString(long ptr long)
>   @ stub HidD_GetMsGenreDescriptor
> diff --git a/dlls/hid/hidd.c b/dlls/hid/hidd.c
> index ca14c4f571..e313ccb713 100644
> --- a/dlls/hid/hidd.c
> +++ b/dlls/hid/hidd.c
> @@ -157,3 +157,9 @@ BOOLEAN WINAPI HidD_SetOutputReport(HANDLE HidDeviceObject, void *ReportBuffer,
>       TRACE("(%p %p %u)\n", HidDeviceObject, ReportBuffer, ReportBufferLength);
>       return sync_ioctl(HidDeviceObject, IOCTL_HID_SET_OUTPUT_REPORT, ReportBuffer, ReportBufferLength, NULL, 0);
>   }
> +
> +BOOLEAN WINAPI HidD_GetIndexedString(HANDLE file, ULONG index, void *buffer, ULONG length)
> +{
> +    TRACE("file %p, index %u, buffer %p, length %u.\n", file, index, buffer, length);
> +    return sync_ioctl(file, IOCTL_HID_GET_INDEXED_STRING, &index, sizeof(index), buffer, length);
> +}
> diff --git a/include/ddk/hidsdi.h b/include/ddk/hidsdi.h
> index 71e50a9084..e57a968d5a 100644
> --- a/include/ddk/hidsdi.h
> +++ b/include/ddk/hidsdi.h
> @@ -36,6 +36,7 @@ typedef struct _HIDD_ATTRIBUTES {
>   
>   BOOLEAN WINAPI HidD_GetFeature(HANDLE HidDeviceObject, PVOID ReportBuffer, ULONG ReportBufferLength);
>   void WINAPI HidD_GetHidGuid(LPGUID guid);
> +BOOLEAN WINAPI HidD_GetIndexedString(HANDLE file, ULONG index, void *buffer, ULONG length);
>   BOOLEAN WINAPI HidD_GetInputReport(HANDLE HidDeviceObject, PVOID ReportBuffer, ULONG ReportBufferLength);
>   BOOLEAN WINAPI HidD_GetManufacturerString(HANDLE HidDeviceObject, PVOID Buffer, ULONG BufferLength);
>   BOOLEAN WINAPI HidD_GetNumInputBuffers(HANDLE HidDeviceObject, ULONG *NumberBuffers);
> 



More information about the wine-devel mailing list