aboutsummaryrefslogtreecommitdiff
path: root/deque.c
diff options
context:
space:
mode:
Diffstat (limited to 'deque.c')
-rw-r--r--deque.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/deque.c b/deque.c
index 5687a41..da3c221 100644
--- a/deque.c
+++ b/deque.c
@@ -182,7 +182,6 @@ deque_push_back(struct deque *d, T data)
182 } 182 }
183 183
184 d->map[chunk_num][chunk_off] = data; 184 d->map[chunk_num][chunk_off] = data;
185
186 ++d->size; 185 ++d->size;
187} 186}
188 187
@@ -194,12 +193,12 @@ deque_push_front(struct deque *d, T data)
194 d->offset = CHUNK_CAPACITY; 193 d->offset = CHUNK_CAPACITY;
195 } 194 }
196 195
197 ++d->size;
198 --d->offset; 196 --d->offset;
199 197
200 const size_t chunk_num = (d->offset / CHUNK_CAPACITY + d->map_begin) % d->map_capacity; 198 const size_t chunk_num = (d->offset / CHUNK_CAPACITY + d->map_begin) % d->map_capacity;
201 199
202 d->map[chunk_num][d->offset] = data; 200 d->map[chunk_num][d->offset] = data;
201 ++d->size;
203} 202}
204 203
205bool 204bool
@@ -231,11 +230,12 @@ deque_pop_front(struct deque *d, T *data)
231 return false; 230 return false;
232 } 231 }
233 232
233 --d->size;
234
234 const size_t chunk_num = (d->offset / CHUNK_CAPACITY + d->map_begin) % d->map_capacity; 235 const size_t chunk_num = (d->offset / CHUNK_CAPACITY + d->map_begin) % d->map_capacity;
235 236
236 *data = d->map[chunk_num][d->offset]; 237 *data = d->map[chunk_num][d->offset];
237 238
238 --d->size;
239 ++d->offset; 239 ++d->offset;
240 240
241 if ( d->size == 0 || d->offset == CHUNK_CAPACITY ) { 241 if ( d->size == 0 || d->offset == CHUNK_CAPACITY ) {