Altered the CDC Deivice and Host Class drivers' receive byte routines, so that no...
[pub/USBasp.git] / Projects / XPLAINBridge / XPLAINBridge.c
index 2835481..7a1bcb3 100644 (file)
@@ -120,7 +120,8 @@ void UARTBridge_Task(void)
          return;
 
        /* Read bytes from the USB OUT endpoint into the UART transmit buffer */
-       if (CDC_Device_BytesReceived(&VirtualSerial_CDC_Interface) && !(RingBuffer_IsFull(&USBtoUART_Buffer)))
+       int16_t ReceivedByte = CDC_Device_ReceiveByte(&VirtualSerial_CDC_Interface);
+       if (!(ReceivedByte < 0) && !(RingBuffer_IsFull(&USBtoUART_Buffer)))
          RingBuffer_AtomicInsert(&USBtoUART_Buffer, CDC_Device_ReceiveByte(&VirtualSerial_CDC_Interface));
        
        /* Check if the software UART flush timer has expired */