diff --git a/components/drivers/serial/serial.c b/components/drivers/serial/serial.c index 34f8f621e7..f94b7eda01 100644 --- a/components/drivers/serial/serial.c +++ b/components/drivers/serial/serial.c @@ -393,7 +393,7 @@ static void rt_dma_recv_update_get_index(struct rt_serial_device *serial, rt_siz if (rx_fifo->is_full && len != 0) rx_fifo->is_full = RT_FALSE; rx_fifo->get_index += len; - if (rx_fifo->get_index > serial->config.bufsz) + if (rx_fifo->get_index >= serial->config.bufsz) { rx_fifo->get_index %= serial->config.bufsz; }