Ver código fonte

[device][serial] call rx_indicate function only if the rx_length is not equal 0

liang yongxiang 6 anos atrás
pai
commit
2f402db661
1 arquivos alterados com 4 adições e 1 exclusões
  1. 4 1
      components/drivers/serial/serial.c

+ 4 - 1
components/drivers/serial/serial.c

@@ -1180,7 +1180,10 @@ void rt_hw_serial_isr(struct rt_serial_device *serial, int event)
                     (serial->config.bufsz - (rx_fifo->get_index - rx_fifo->put_index));
                 rt_hw_interrupt_enable(level);
 
-                serial->parent.rx_indicate(&serial->parent, rx_length);
+                if (rx_length)
+                {
+                    serial->parent.rx_indicate(&serial->parent, rx_length);
+                }
             }
             break;
         }