1
0
Эх сурвалжийг харах

Merge pull request #1314 from enkiller/dev

[drivers]Fix put_force bug
Bernard Xiong 7 жил өмнө
parent
commit
c6a5a2a386

+ 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)
     {