@@ -63,11 +63,14 @@ uint32_t ring_buf_put(struct ring_buf *buf, const uint8_t *data, uint32_t size)
63
63
64
64
do {
65
65
partial_size = ring_buf_put_claim (buf , & dst , size );
66
+ if (partial_size == 0 ) {
67
+ break ;
68
+ }
66
69
memcpy (dst , data , partial_size );
67
70
total_size += partial_size ;
68
71
size -= partial_size ;
69
72
data += partial_size ;
70
- } while (size && partial_size );
73
+ } while (size != 0 );
71
74
72
75
err = ring_buf_put_finish (buf , total_size );
73
76
__ASSERT_NO_MSG (err == 0 );
@@ -130,13 +133,16 @@ uint32_t ring_buf_get(struct ring_buf *buf, uint8_t *data, uint32_t size)
130
133
131
134
do {
132
135
partial_size = ring_buf_get_claim (buf , & src , size );
136
+ if (partial_size == 0 ) {
137
+ break ;
138
+ }
133
139
if (data ) {
134
140
memcpy (data , src , partial_size );
135
141
data += partial_size ;
136
142
}
137
143
total_size += partial_size ;
138
144
size -= partial_size ;
139
- } while (size && partial_size );
145
+ } while (size != 0 );
140
146
141
147
err = ring_buf_get_finish (buf , total_size );
142
148
__ASSERT_NO_MSG (err == 0 );
@@ -154,12 +160,15 @@ uint32_t ring_buf_peek(struct ring_buf *buf, uint8_t *data, uint32_t size)
154
160
155
161
do {
156
162
partial_size = ring_buf_get_claim (buf , & src , size );
163
+ if (partial_size == 0 ) {
164
+ break ;
165
+ }
157
166
__ASSERT_NO_MSG (data != NULL );
158
167
memcpy (data , src , partial_size );
159
168
data += partial_size ;
160
169
total_size += partial_size ;
161
170
size -= partial_size ;
162
- } while (size && partial_size );
171
+ } while (size != 0 );
163
172
164
173
/* effectively unclaim total_size bytes */
165
174
err = ring_buf_get_finish (buf , 0 );
@@ -206,11 +215,14 @@ int ring_buf_item_put(struct ring_buf *buf, uint16_t type, uint8_t value,
206
215
207
216
do {
208
217
partial_size = ring_buf_put_claim (buf , & dst , size );
218
+ if (partial_size == 0 ) {
219
+ break ;
220
+ }
209
221
memcpy (dst , data , partial_size );
210
222
size -= partial_size ;
211
223
total_size += partial_size ;
212
224
data += partial_size ;
213
- } while (size && partial_size );
225
+ } while (size != 0 );
214
226
__ASSERT_NO_MSG (size == 0 );
215
227
216
228
err = ring_buf_put_finish (buf , total_size );
@@ -252,13 +264,16 @@ int ring_buf_item_get(struct ring_buf *buf, uint16_t *type, uint8_t *value,
252
264
253
265
do {
254
266
partial_size = ring_buf_get_claim (buf , & src , size );
267
+ if (partial_size == 0 ) {
268
+ break ;
269
+ }
255
270
if (data ) {
256
271
memcpy (data , src , partial_size );
257
272
data += partial_size ;
258
273
}
259
274
total_size += partial_size ;
260
275
size -= partial_size ;
261
- } while (size && partial_size );
276
+ } while (size != 0 );
262
277
263
278
err = ring_buf_get_finish (buf , total_size );
264
279
__ASSERT_NO_MSG (err == 0 );
0 commit comments