diff --git a/include/zephyr/sys/ring_buffer.h b/include/zephyr/sys/ring_buffer.h index 2c75cf1eb84d..76c971076100 100644 --- a/include/zephyr/sys/ring_buffer.h +++ b/include/zephyr/sys/ring_buffer.h @@ -304,8 +304,9 @@ static inline uint32_t ring_buf_put_claim(struct ring_buf *buf, uint8_t **data, uint32_t size) { + uint32_t space = ring_buf_space_get(buf); return ring_buf_area_claim(buf, &buf->put, data, - MIN(size, ring_buf_space_get(buf))); + MIN(size, space)); } /** @@ -385,8 +386,9 @@ static inline uint32_t ring_buf_get_claim(struct ring_buf *buf, uint8_t **data, uint32_t size) { + uint32_t buf_size = ring_buf_size_get(buf); return ring_buf_area_claim(buf, &buf->get, data, - MIN(size, ring_buf_size_get(buf))); + MIN(size, buf_size)); } /**