diff options
-rw-r--r-- | LUFA/Drivers/USB/Core/AVR8/EndpointStream_AVR8.c | 22 | ||||
-rw-r--r-- | LUFA/Drivers/USB/Core/UC3/EndpointStream_UC3.c | 22 | ||||
-rw-r--r-- | LUFA/Drivers/USB/Core/XMEGA/EndpointStream_XMEGA.c | 22 |
3 files changed, 18 insertions, 48 deletions
diff --git a/LUFA/Drivers/USB/Core/AVR8/EndpointStream_AVR8.c b/LUFA/Drivers/USB/Core/AVR8/EndpointStream_AVR8.c index 0364c60f1..bf6fee42a 100644 --- a/LUFA/Drivers/USB/Core/AVR8/EndpointStream_AVR8.c +++ b/LUFA/Drivers/USB/Core/AVR8/EndpointStream_AVR8.c @@ -43,15 +43,12 @@ uint8_t Endpoint_Discard_Stream(uint16_t Length, uint16_t* const BytesProcessed) { uint8_t ErrorCode; - uint16_t BytesInTransfer = 0; + uint16_t BytesInTransfer = BytesProcessed ? *BytesProcessed : 0; if ((ErrorCode = Endpoint_WaitUntilReady())) return ErrorCode; - if (BytesProcessed != NULL) - Length -= *BytesProcessed; - - while (Length) + while (BytesInTransfer < Length) { if (!(Endpoint_IsReadWriteAllowed())) { @@ -59,7 +56,7 @@ uint8_t Endpoint_Discard_Stream(uint16_t Length, if (BytesProcessed != NULL) { - *BytesProcessed += BytesInTransfer; + *BytesProcessed = BytesInTransfer; return ENDPOINT_RWSTREAM_IncompleteTransfer; } @@ -69,8 +66,6 @@ uint8_t Endpoint_Discard_Stream(uint16_t Length, else { Endpoint_Discard_8(); - - Length--; BytesInTransfer++; } } @@ -82,15 +77,12 @@ uint8_t Endpoint_Null_Stream(uint16_t Length, uint16_t* const BytesProcessed) { uint8_t ErrorCode; - uint16_t BytesInTransfer = 0; + uint16_t BytesInTransfer = BytesProcessed ? *BytesProcessed : 0; if ((ErrorCode = Endpoint_WaitUntilReady())) return ErrorCode; - if (BytesProcessed != NULL) - Length -= *BytesProcessed; - - while (Length) + while (BytesInTransfer < Length) { if (!(Endpoint_IsReadWriteAllowed())) { @@ -98,7 +90,7 @@ uint8_t Endpoint_Null_Stream(uint16_t Length, if (BytesProcessed != NULL) { - *BytesProcessed += BytesInTransfer; + *BytesProcessed = BytesInTransfer; return ENDPOINT_RWSTREAM_IncompleteTransfer; } @@ -108,8 +100,6 @@ uint8_t Endpoint_Null_Stream(uint16_t Length, else { Endpoint_Write_8(0); - - Length--; BytesInTransfer++; } } diff --git a/LUFA/Drivers/USB/Core/UC3/EndpointStream_UC3.c b/LUFA/Drivers/USB/Core/UC3/EndpointStream_UC3.c index 214edd733..5a6131f1f 100644 --- a/LUFA/Drivers/USB/Core/UC3/EndpointStream_UC3.c +++ b/LUFA/Drivers/USB/Core/UC3/EndpointStream_UC3.c @@ -43,15 +43,12 @@ uint8_t Endpoint_Discard_Stream(uint16_t Length, uint16_t* const BytesProcessed) { uint8_t ErrorCode; - uint16_t BytesInTransfer = 0; + uint16_t BytesInTransfer = BytesProcessed ? *BytesProcessed : 0; if ((ErrorCode = Endpoint_WaitUntilReady())) return ErrorCode; - if (BytesProcessed != NULL) - Length -= *BytesProcessed; - - while (Length) + while (BytesInTransfer < Length) { if (!(Endpoint_IsReadWriteAllowed())) { @@ -59,7 +56,7 @@ uint8_t Endpoint_Discard_Stream(uint16_t Length, if (BytesProcessed != NULL) { - *BytesProcessed += BytesInTransfer; + *BytesProcessed = BytesInTransfer; return ENDPOINT_RWSTREAM_IncompleteTransfer; } @@ -69,8 +66,6 @@ uint8_t Endpoint_Discard_Stream(uint16_t Length, else { Endpoint_Discard_8(); - - Length--; BytesInTransfer++; } } @@ -82,15 +77,12 @@ uint8_t Endpoint_Null_Stream(uint16_t Length, uint16_t* const BytesProcessed) { uint8_t ErrorCode; - uint16_t BytesInTransfer = 0; + uint16_t BytesInTransfer = BytesProcessed ? *BytesProcessed : 0; if ((ErrorCode = Endpoint_WaitUntilReady())) return ErrorCode; - if (BytesProcessed != NULL) - Length -= *BytesProcessed; - - while (Length) + while (BytesInTransfer < Length) { if (!(Endpoint_IsReadWriteAllowed())) { @@ -98,7 +90,7 @@ uint8_t Endpoint_Null_Stream(uint16_t Length, if (BytesProcessed != NULL) { - *BytesProcessed += BytesInTransfer; + *BytesProcessed = BytesInTransfer; return ENDPOINT_RWSTREAM_IncompleteTransfer; } @@ -108,8 +100,6 @@ uint8_t Endpoint_Null_Stream(uint16_t Length, else { Endpoint_Write_8(0); - - Length--; BytesInTransfer++; } } diff --git a/LUFA/Drivers/USB/Core/XMEGA/EndpointStream_XMEGA.c b/LUFA/Drivers/USB/Core/XMEGA/EndpointStream_XMEGA.c index a24f624ab..e8ee7e645 100644 --- a/LUFA/Drivers/USB/Core/XMEGA/EndpointStream_XMEGA.c +++ b/LUFA/Drivers/USB/Core/XMEGA/EndpointStream_XMEGA.c @@ -43,15 +43,12 @@ uint8_t Endpoint_Discard_Stream(uint16_t Length, uint16_t* const BytesProcessed) { uint8_t ErrorCode; - uint16_t BytesInTransfer = 0; + uint16_t BytesInTransfer = BytesProcessed ? *BytesProcessed : 0; if ((ErrorCode = Endpoint_WaitUntilReady())) return ErrorCode; - if (BytesProcessed != NULL) - Length -= *BytesProcessed; - - while (Length) + while (BytesInTransfer < Length) { if (!(Endpoint_IsReadWriteAllowed())) { @@ -59,7 +56,7 @@ uint8_t Endpoint_Discard_Stream(uint16_t Length, if (BytesProcessed != NULL) { - *BytesProcessed += BytesInTransfer; + *BytesProcessed = BytesInTransfer; return ENDPOINT_RWSTREAM_IncompleteTransfer; } @@ -69,8 +66,6 @@ uint8_t Endpoint_Discard_Stream(uint16_t Length, else { Endpoint_Discard_8(); - - Length--; BytesInTransfer++; } } @@ -82,15 +77,12 @@ uint8_t Endpoint_Null_Stream(uint16_t Length, uint16_t* const BytesProcessed) { uint8_t ErrorCode; - uint16_t BytesInTransfer = 0; + uint16_t BytesInTransfer = BytesProcessed ? *BytesProcessed : 0; if ((ErrorCode = Endpoint_WaitUntilReady())) return ErrorCode; - if (BytesProcessed != NULL) - Length -= *BytesProcessed; - - while (Length) + while (BytesInTransfer < Length) { if (!(Endpoint_IsReadWriteAllowed())) { @@ -98,7 +90,7 @@ uint8_t Endpoint_Null_Stream(uint16_t Length, if (BytesProcessed != NULL) { - *BytesProcessed += BytesInTransfer; + *BytesProcessed = BytesInTransfer; return ENDPOINT_RWSTREAM_IncompleteTransfer; } @@ -108,8 +100,6 @@ uint8_t Endpoint_Null_Stream(uint16_t Length, else { Endpoint_Write_8(0); - - Length--; BytesInTransfer++; } } |