aboutsummaryrefslogtreecommitdiff
path: root/LUFA/Drivers/USB/Class
diff options
context:
space:
mode:
authorDean <Dean@d5102386-fcda-11dd-9fdb-3debd5008f28>2010-12-02 04:28:53 +0000
committerDean <Dean@d5102386-fcda-11dd-9fdb-3debd5008f28>2010-12-02 04:28:53 +0000
commitf9fbd0154a21b8a775df04530784909db5dc2a57 (patch)
tree8a5baab95c537d328dc4a0c695148393077e6c98 /LUFA/Drivers/USB/Class
parent15bde77cf3c3c8a47e3ce4be8148bffed0c79317 (diff)
Fixed HID hpst class driver incorrectly binding to HID devices that do not have an OUT endpoint.
git-svn-id: http://lufa-lib.googlecode.com/svn/trunk@1600 d5102386-fcda-11dd-9fdb-3debd5008f28
Diffstat (limited to 'LUFA/Drivers/USB/Class')
-rw-r--r--LUFA/Drivers/USB/Class/Host/HID.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/LUFA/Drivers/USB/Class/Host/HID.c b/LUFA/Drivers/USB/Class/Host/HID.c
index e6c575e2..427dbd56 100644
--- a/LUFA/Drivers/USB/Class/Host/HID.c
+++ b/LUFA/Drivers/USB/Class/Host/HID.c
@@ -88,7 +88,7 @@ uint8_t HID_Host_ConfigurePipes(USB_ClassInfo_HID_Host_t* const HIDInterfaceInfo
USB_Descriptor_Endpoint_t* EndpointData = DESCRIPTOR_PCAST(ConfigDescriptorData, USB_Descriptor_Endpoint_t);
if (EndpointData->EndpointAddress & ENDPOINT_DESCRIPTOR_DIR_IN)
- DataINEndpoint = EndpointData;
+ DataINEndpoint = EndpointData;
else
DataOUTEndpoint = EndpointData;
}
@@ -115,6 +115,9 @@ uint8_t HID_Host_ConfigurePipes(USB_ClassInfo_HID_Host_t* const HIDInterfaceInfo
}
else if (PipeNum == HIDInterfaceInfo->Config.DataOUTPipeNumber)
{
+ if (DataOUTEndpoint == NULL)
+ continue;
+
Size = DataOUTEndpoint->EndpointSize;
EndpointAddress = DataOUTEndpoint->EndpointAddress;
Token = PIPE_TOKEN_OUT;