diff options
author | Dean Camera <dean@fourwalledcubicle.com> | 2009-07-27 23:19:17 +0000 |
---|---|---|
committer | Dean Camera <dean@fourwalledcubicle.com> | 2009-07-27 23:19:17 +0000 |
commit | 864196c884ef3602aee44f1a68aceb5819a07f21 (patch) | |
tree | f3042aeb3e58a886739f96bac2a2a6543c8f2cbe /LUFA/Drivers/USB/Class/Host | |
parent | b9dd51cd632c1a8cff18f77b4f09c33bdf804768 (diff) | |
download | lufa-864196c884ef3602aee44f1a68aceb5819a07f21.tar.gz lufa-864196c884ef3602aee44f1a68aceb5819a07f21.tar.bz2 lufa-864196c884ef3602aee44f1a68aceb5819a07f21.zip |
State information for class drivers is now zeroed out during enumeration (both in device and host mode) to ensure sane values after each enumeration. User code should no longer explicitly set state information as this is no longer preserved.
Diffstat (limited to 'LUFA/Drivers/USB/Class/Host')
-rw-r--r-- | LUFA/Drivers/USB/Class/Host/CDC.c | 2 | ||||
-rw-r--r-- | LUFA/Drivers/USB/Class/Host/HID.c | 2 |
2 files changed, 4 insertions, 0 deletions
diff --git a/LUFA/Drivers/USB/Class/Host/CDC.c b/LUFA/Drivers/USB/Class/Host/CDC.c index 4402f3386..9c59b5c2d 100644 --- a/LUFA/Drivers/USB/Class/Host/CDC.c +++ b/LUFA/Drivers/USB/Class/Host/CDC.c @@ -39,6 +39,8 @@ uint8_t CDC_Host_ConfigurePipes(USB_ClassInfo_CDC_Host_t* CDCInterfaceInfo, uint {
uint8_t FoundEndpoints = 0;
+ memset(&CDCInterfaceInfo->State, 0x00, sizeof(CDCInterfaceInfo->State));
+
if (DESCRIPTOR_TYPE(ConfigDescriptorData) != DTYPE_Configuration)
return CDC_ENUMERROR_InvalidConfigDescriptor;
diff --git a/LUFA/Drivers/USB/Class/Host/HID.c b/LUFA/Drivers/USB/Class/Host/HID.c index 8639b4836..6652cdcbe 100644 --- a/LUFA/Drivers/USB/Class/Host/HID.c +++ b/LUFA/Drivers/USB/Class/Host/HID.c @@ -39,6 +39,8 @@ uint8_t HID_Host_ConfigurePipes(USB_ClassInfo_HID_Host_t* HIDInterfaceInfo, uint {
uint8_t FoundEndpoints = 0;
+ memset(&HIDInterfaceInfo->State, 0x00, sizeof(HIDInterfaceInfo->State));
+
if (DESCRIPTOR_TYPE(ConfigDescriptorData) != DTYPE_Configuration)
return HID_ENUMERROR_InvalidConfigDescriptor;
|