Ensure that the CDC class drivers return 0 if the number of unread bytes is queried and the bank has become empty.

pull/1469/head
Dean Camera 15 years ago
parent c3db72afdc
commit cde2afc50e

@ -68,7 +68,7 @@ BOARD =
# does not *change* the processor frequency - it should merely be updated to
# reflect the processor speed set externally so that the code can use accurate
# software delays.
F_CPU = 8000000
F_CPU = 16000000
# Input clock frequency.

@ -195,10 +195,15 @@ uint16_t CDC_Device_BytesReceived(USB_ClassInfo_CDC_Device_t* const CDCInterface
if (Endpoint_IsOUTReceived())
{
if (!(Endpoint_BytesInEndpoint()))
{
Endpoint_ClearOUT();
return 0;
}
else
{
return Endpoint_BytesInEndpoint();
}
}
else
{
return 0;

@ -315,12 +315,16 @@ uint16_t CDC_Host_BytesReceived(USB_ClassInfo_CDC_Host_t* const CDCInterfaceInfo
if (Pipe_IsINReceived())
{
if (!(Pipe_BytesInPipe()))
{
Pipe_ClearIN();
BytesInPipe = Pipe_BytesInPipe();
Pipe_Freeze();
return BytesInPipe;
return 0;
}
else
{
Pipe_Freeze();
return Pipe_BytesInPipe();
}
}
else
{

Loading…
Cancel
Save