[1/3] hidclass.sys: Update reportBuffer pointer after reading packet from ringbuffer.

Sebastian Lackner sebastian at fds-team.de
Wed Oct 26 14:52:58 CDT 2016


Signed-off-by: Sebastian Lackner <sebastian at fds-team.de>
---
 dlls/hidclass.sys/device.c |    2 ++
 1 file changed, 2 insertions(+)

diff --git a/dlls/hidclass.sys/device.c b/dlls/hidclass.sys/device.c
index 45f88eb..9640af2 100644
--- a/dlls/hidclass.sys/device.c
+++ b/dlls/hidclass.sys/device.c
@@ -218,6 +218,7 @@ static void HID_Device_processQueue(DEVICE_OBJECT *device)
         if (buffer_size)
         {
             IO_STACK_LOCATION *irpsp = IoGetCurrentIrpStackLocation(irp);
+            packet->reportBuffer = (BYTE *)packet + sizeof(*packet);
             TRACE_(hid_report)("Processing Request (%i)\n",ptr);
             if (irpsp->Parameters.Read.Length >= packet->reportBufferLen)
             {
@@ -645,6 +646,7 @@ NTSTATUS WINAPI HID_Device_read(DEVICE_OBJECT *device, IRP *irp)
     if (buffer_size)
     {
         IO_STACK_LOCATION *irpsp = IoGetCurrentIrpStackLocation( irp );
+        packet->reportBuffer = (BYTE *)packet + sizeof(*packet);
         TRACE_(hid_report)("Got Packet %p %i\n", packet->reportBuffer, packet->reportBufferLen);
         if (irpsp->Parameters.Read.Length >= packet->reportBufferLen)
         {
-- 
2.9.0



More information about the wine-patches mailing list