X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/7f9f97c792dee6875fbca9806422bdd7d6c5a657..797130bddc25d519cd765ca8d82d1e729e3d8ae0:/LUFA/Drivers/USB/Class/Host/HIDParser.c?ds=sidebyside diff --git a/LUFA/Drivers/USB/Class/Host/HIDParser.c b/LUFA/Drivers/USB/Class/Host/HIDParser.c index 3ef9c7812..386c3b937 100644 --- a/LUFA/Drivers/USB/Class/Host/HIDParser.c +++ b/LUFA/Drivers/USB/Class/Host/HIDParser.c @@ -28,6 +28,7 @@ this software. */ +#define __INCLUDE_FROM_USB_DRIVER #include "../../HighLevel/USBMode.h" #if defined(USB_CAN_BE_HOST) @@ -340,8 +341,10 @@ uint16_t USB_GetHIDReportSize(HID_ReportInfo_t* const ParserData, const uint8_t { for (uint8_t i = 0; i < HID_MAX_REPORT_IDS; i++) { + uint16_t ReportSizeBits = ParserData->ReportIDSizes[i].ReportSizeBits[ReportType]; + if (ParserData->ReportIDSizes[i].ReportID == ReportID) - return ParserData->ReportIDSizes[i].ReportSizeBits[ReportType]; + return ((ReportSizeBits >> 3) + ((ReportSizeBits & 0x07) ? 1 : 0)); } return 0;