Fixed possible buffer overrun in the XPLAINBridge project when in serial bridge mode.

This commit is contained in:
Dean Camera 2010-07-15 04:45:31 +00:00
parent 7cef08e10e
commit e2e1fe5aad
5 changed files with 62 additions and 2 deletions

View file

@ -84,7 +84,7 @@ int main(void)
/* Read bytes from the USB OUT endpoint into the USART transmit buffer */
for (uint8_t DataBytesRem = CDC_Device_BytesReceived(&VirtualSerial_CDC_Interface); DataBytesRem != 0; DataBytesRem--)
{
if (!(BUFFER_SIZE - USBtoUSART_Buffer.Count))
if (RingBuffer_IsFull(&USBtoUSART_Buffer))
break;
RingBuffer_AtomicInsert(&USBtoUSART_Buffer, CDC_Device_ReceiveByte(&VirtualSerial_CDC_Interface));