Browse Source

Merge pull request #1314 from enkiller/dev

[drivers]Fix put_force bug
Bernard Xiong 7 năm trước cách đây
mục cha
commit
c6a5a2a386
1 tập tin đã thay đổi với 4 bổ sung1 xóa
  1. 4 1
      components/drivers/src/ringbuffer.c

+ 4 - 1
components/drivers/src/ringbuffer.c

@@ -119,8 +119,11 @@ rt_size_t rt_ringbuffer_put_force(struct rt_ringbuffer *rb,
 
     space_length = rt_ringbuffer_space_len(rb);
 
-    if (length > space_length)
+    if (length > rb->buffer_size)
+    {
+        ptr = &ptr[length - rb->buffer_size];
         length = rb->buffer_size;
+    }
 
     if (rb->buffer_size - rb->write_index > length)
     {