| 152 | } |
| 153 | |
| 154 | static RING_BUFFER_SIZE_TYPE ring_buffer_pop_core(ring_buffer_t *ring_buf, char* vals, RING_BUFFER_SIZE_TYPE maxvals) |
| 155 | { |
| 156 | assert(ring_buf); |
| 157 | assert(vals); |
| 158 | RING_BUFFER_SIZE_TYPE npopped = 0; |
| 159 | while (ring_buf->num_buffered > 0 && npopped < maxvals) { |
| 160 | vals[npopped++] = ring_buf->buf[ring_buf->out_idx]; |
| 161 | ring_buf->out_idx = (ring_buf->out_idx+1) % ring_buf->bufsize; |
| 162 | --ring_buf->num_buffered; |
| 163 | } |
| 164 | return npopped; |
| 165 | } |
| 166 | |
| 167 | RING_BUFFER_SIZE_TYPE ring_buffer_pop_unsafe(ring_buffer_t *ring_buf, char* vals, RING_BUFFER_SIZE_TYPE maxvals) |
| 168 | { |
no outgoing calls
no test coverage detected