Skip to content
Snippets Groups Projects
Commit 6c38ca28 authored by Dean Camera's avatar Dean Camera
Browse files

Fixed Endpoint_Write_Control_Stream_* functions not sending a terminating IN...

Fixed Endpoint_Write_Control_Stream_* functions not sending a terminating IN when the given data length is zero.
parent 7ef58eef
Branches
Tags
No related merge requests found
......@@ -42,7 +42,7 @@
#include <LUFA/Drivers/USB/USB.h>
#include <LUFA/Drivers/USB/Class/HID.h>
/** Type Defines: */
/* Type Defines: */
/** Type define for the device configuration descriptor structure. This must be defined in the
* application code, as the configuration descriptor contains several sub-descriptors which
* vary between devices, and which describe the device's usage to the host.
......
......@@ -2,6 +2,9 @@ uint8_t TEMPLATE_FUNC_NAME (void* Buffer, uint16_t Length)
{
uint8_t* DataStream = ((uint8_t*)Buffer + TEMPLATE_BUFFER_OFFSET(Length));
if (!(Length))
Endpoint_ClearOUT();
while (Length)
{
if (Endpoint_IsSETUPReceived())
......
......@@ -5,6 +5,8 @@ uint8_t TEMPLATE_FUNC_NAME (const void* Buffer, uint16_t Length)
if (Length > USB_ControlRequest.wLength)
Length = USB_ControlRequest.wLength;
else if (!(Length))
Endpoint_ClearIN();
while (Length || LastPacketFull)
{
......
......@@ -51,6 +51,7 @@
* - Fixed HID host Class driver report send/receive report broken when issued through the control pipe
* - Fixed HOST_STATE_AS_GPIOR compile time option being ignored when in host mode (thanks to David Lyons)
* - Fixed LowLevel Keyboard demo not saving the issues report only after it has been sent to the host
* - Fixed Endpoint_Write_Control_Stream_* functions not sending a terminating IN when given data Length is zero
*
* \section Sec_ChangeLog090924 Version 090924
*
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment