292 if (iter->remove) { |
292 if (iter->remove) { |
293 iter->remove = false; |
293 iter->remove = false; |
294 cx_arl_remove(iter->src_handle, iter->index); |
294 cx_arl_remove(iter->src_handle, iter->index); |
295 } else { |
295 } else { |
296 iter->index++; |
296 iter->index++; |
297 iter->elem_handle = cx_arl_at(iter->src_handle, iter->index); |
297 iter->elem_handle = |
|
298 ((char *) iter->elem_handle) |
|
299 + ((struct cx_list_s const *) iter->src_handle)->itemsize; |
298 } |
300 } |
299 } |
301 } |
300 |
302 |
301 static struct cx_iterator_s cx_arl_iterator( |
303 static struct cx_iterator_s cx_arl_iterator( |
302 struct cx_list_s *list, |
304 struct cx_list_s *list, |