summaryrefslogtreecommitdiff
path: root/components/drivers/src
diff options
context:
space:
mode:
authorZYH <[email protected]>2018-03-28 10:10:39 +0800
committerZYH <[email protected]>2018-03-28 10:10:39 +0800
commit26119affdf381f83a25b3e2d482e0d9aafb8390a (patch)
treed05f2b07c7f0646b21850a1f7e344d7b7d29a271 /components/drivers/src
parente04c3cecc8f43d892fca33669f566abff7e455af (diff)
parentc6a5a2a3864e54d773afd207f3da7d159415d151 (diff)
Merge remote-tracking branch 'upstream/master'
Diffstat (limited to 'components/drivers/src')
-rw-r--r--components/drivers/src/ringbuffer.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/components/drivers/src/ringbuffer.c b/components/drivers/src/ringbuffer.c
index baeeea0e50..48bf590f8c 100644
--- a/components/drivers/src/ringbuffer.c
+++ b/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)
{