Fixed Endpoint_Write_Control_* functions writing more data than expected by the host, causing it to panic (thanks to Johannes Raschke).

This commit is contained in:
Dean Camera 2009-05-02 13:05:25 +00:00
parent 13935a31b9
commit 6a8e27f7ee
4 changed files with 37 additions and 30 deletions

View file

@ -350,7 +350,7 @@ static void WriteNextResponseByte(const uint8_t Response)
/* Select the IN endpoint so that the next data byte can be written */
Endpoint_SelectEndpoint(CDC_TX_EPNUM);
/* If OUT endpoint empty, clear it and wait for the next packet from the host */
/* If IN endpoint full, clear it and wait util ready for the next packet to the host */
if (!(Endpoint_IsReadWriteAllowed()))
{
Endpoint_ClearIN();

View file

@ -82,7 +82,7 @@
#define BOOTLOADER_HWVERSION_MINOR 0x00
/** Eight character bootloader firmware identifier reported to the host when requested */
#define SOFTWARE_IDENTIFIER "LUFA-CDC"
#define SOFTWARE_IDENTIFIER "LUFACDC"
/* Event Handlers: */
/** Indicates that this module will catch the USB_Disconnect event when thrown by the library. */

View file

@ -198,7 +198,7 @@ USB_Descriptor_String_t LanguageString =
*/
USB_Descriptor_String_t ProductString =
{
.Header = {.Size = USB_STRING_LEN(15), .Type = DTYPE_String},
.Header = {.Size = USB_STRING_LEN(18), .Type = DTYPE_String},
.UnicodeString = L"AVR CDC Bootloader"
};