From: Dean Camera Date: Mon, 4 Jan 2010 00:33:31 +0000 (+0000) Subject: Fix CDC blocking streams in Host mode locking up when the device is removed. X-Git-Tag: LUFA-110528-BETA~691 X-Git-Url: http://git.linex4red.de/pub/USBasp.git/commitdiff_plain/1e1cf2c499d7ac0cfae536e1264af4645350813b Fix CDC blocking streams in Host mode locking up when the device is removed. --- diff --git a/LUFA/Drivers/USB/Class/Host/CDC.c b/LUFA/Drivers/USB/Class/Host/CDC.c index 030ad9464..7f5bcb940 100644 --- a/LUFA/Drivers/USB/Class/Host/CDC.c +++ b/LUFA/Drivers/USB/Class/Host/CDC.c @@ -445,6 +445,9 @@ static int CDC_Host_getchar_Blocking(FILE* Stream) { while (!(CDC_Host_BytesReceived((USB_ClassInfo_CDC_Host_t*)fdev_get_udata(Stream)))) { + if (USB_HostState == HOST_STATE_Unattached) + return _FDEV_EOF; + CDC_Host_USBTask((USB_ClassInfo_CDC_Host_t*)fdev_get_udata(Stream)); USB_USBTask(); }