aboutsummaryrefslogtreecommitdiffstats
path: root/LUFA/Drivers/USB/Class/Host/CDC.c
diff options
context:
space:
mode:
authorDean Camera <dean@fourwalledcubicle.com>2010-02-01 01:27:00 +0000
committerDean Camera <dean@fourwalledcubicle.com>2010-02-01 01:27:00 +0000
commitb6a4584a19e81c2e1f909355bbc64c2b8cea84f6 (patch)
tree3e5388a85cea77702c24478245097138c7bf704c /LUFA/Drivers/USB/Class/Host/CDC.c
parentbb1a036f097602a70ce219915db28dea616b76a8 (diff)
downloadlufa-b6a4584a19e81c2e1f909355bbc64c2b8cea84f6.tar.gz
lufa-b6a4584a19e81c2e1f909355bbc64c2b8cea84f6.tar.bz2
lufa-b6a4584a19e81c2e1f909355bbc64c2b8cea84f6.zip
Fixed Pipe_IsEndpointBound() function not taking the endpoint's direction into account.
Re-added Pipe_IsEndpointBound() calls to the CDC and RNDIS host class drivers, not that the function has the correct behaviour for devices with bidirectional endpoints.
Diffstat (limited to 'LUFA/Drivers/USB/Class/Host/CDC.c')
-rw-r--r--LUFA/Drivers/USB/Class/Host/CDC.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/LUFA/Drivers/USB/Class/Host/CDC.c b/LUFA/Drivers/USB/Class/Host/CDC.c
index 85864b05c..227ab94f8 100644
--- a/LUFA/Drivers/USB/Class/Host/CDC.c
+++ b/LUFA/Drivers/USB/Class/Host/CDC.c
@@ -182,7 +182,8 @@ static uint8_t DComp_CDC_Host_NextCDCInterfaceEndpoint(void* const CurrentDescri
uint8_t EndpointType = (CurrentEndpoint->Attributes & EP_TYPE_MASK);
- if ((EndpointType == EP_TYPE_BULK) || (EndpointType == EP_TYPE_INTERRUPT))
+ if (((EndpointType == EP_TYPE_BULK) || (EndpointType == EP_TYPE_INTERRUPT)) &&
+ !(Pipe_IsEndpointBound(CurrentEndpoint->EndpointAddress)))
{
return DESCRIPTOR_SEARCH_Found;
}