\r
Endpoint_SelectEndpoint(CDCInterfaceInfo->Config.DataOUTEndpointNumber);\r
\r
- if (Endpoint_IsOUTReceived() && !(Endpoint_BytesInEndpoint()))\r
- Endpoint_ClearOUT();\r
+ if (Endpoint_IsOUTReceived())\r
+ {\r
+ if (!(Endpoint_BytesInEndpoint()))\r
+ Endpoint_ClearOUT();\r
\r
- return Endpoint_BytesInEndpoint();\r
+ return Endpoint_BytesInEndpoint();\r
+ }\r
+ else\r
+ {\r
+ return 0;\r
+ }\r
}\r
\r
uint8_t CDC_Device_ReceiveByte(USB_ClassInfo_CDC_Device_t* CDCInterfaceInfo)\r
Pipe_SetPipeToken(PIPE_TOKEN_IN);\r
Pipe_Unfreeze();\r
\r
- if (Pipe_IsINReceived() && !(Pipe_BytesInPipe()))\r
- Pipe_ClearIN();\r
- \r
- BytesInPipe = Pipe_BytesInPipe();\r
- Pipe_Freeze();\r
- \r
- return BytesInPipe;\r
+ if (Pipe_IsINReceived())\r
+ {\r
+ if (!(Pipe_BytesInPipe()))\r
+ Pipe_ClearIN();\r
+ \r
+ BytesInPipe = Pipe_BytesInPipe();\r
+ Pipe_Freeze();\r
+ \r
+ return BytesInPipe;\r
+ }\r
+ else\r
+ {\r
+ Pipe_Freeze();\r
+ \r
+ return 0;\r
+ }\r
}\r
\r
uint8_t CDC_Host_ReceiveByte(USB_ClassInfo_CDC_Host_t* const CDCInterfaceInfo)\r