X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/e6881fd166586793a5a90effeefe4188092f383b..bde64666fbdda0a275344c0e5e5175f770be516d:/LUFA/Drivers/USB/Class/Device/CDC.c diff --git a/LUFA/Drivers/USB/Class/Device/CDC.c b/LUFA/Drivers/USB/Class/Device/CDC.c index dface2a6d..c551fb769 100644 --- a/LUFA/Drivers/USB/Class/Device/CDC.c +++ b/LUFA/Drivers/USB/Class/Device/CDC.c @@ -130,6 +130,9 @@ void USB_CDC_USBTask(USB_ClassInfo_CDC_t* CDCInterfaceInfo) void USB_CDC_SendString(USB_ClassInfo_CDC_t* CDCInterfaceInfo, char* Data, uint16_t Length) { + if (!(USB_IsConnected)) + return; + Endpoint_SelectEndpoint(CDCInterfaceInfo->DataINEndpointNumber); Endpoint_Write_Stream_LE(Data, Length, NO_STREAM_CALLBACK); } @@ -159,6 +162,9 @@ uint16_t USB_CDC_BytesReceived(USB_ClassInfo_CDC_t* CDCInterfaceInfo) uint8_t USB_CDC_ReceiveByte(USB_ClassInfo_CDC_t* CDCInterfaceInfo) { + if (!(USB_IsConnected)) + return 0; + Endpoint_SelectEndpoint(CDCInterfaceInfo->DataOUTEndpointNumber); uint8_t DataByte = Endpoint_Read_Byte(); @@ -171,6 +177,9 @@ uint8_t USB_CDC_ReceiveByte(USB_ClassInfo_CDC_t* CDCInterfaceInfo) void USB_CDC_SendSerialLineStateChange(USB_ClassInfo_CDC_t* CDCInterfaceInfo, uint16_t LineStateMask) { + if (!(USB_IsConnected)) + return; + Endpoint_SelectEndpoint(CDCInterfaceInfo->NotificationEndpointNumber); USB_Request_Header_t Notification = (USB_Request_Header_t)