Mercurial > hg > xemacs-beta
comparison src/dynarr.c @ 5027:22179cd0fe15
merge
author | Ben Wing <ben@xemacs.org> |
---|---|
date | Wed, 10 Feb 2010 07:25:19 -0600 |
parents | 838630c0734f |
children | 9410323e4b0d b5df3737028a |
comparison
equal
deleted
inserted
replaced
5026:46cf825f6158 | 5027:22179cd0fe15 |
---|---|
243 | 243 |
244 Dynarr_resize_if (dy, len); | 244 Dynarr_resize_if (dy, len); |
245 | 245 |
246 /* #### This could conceivably be wrong, if code wants to access stuff | 246 /* #### This could conceivably be wrong, if code wants to access stuff |
247 between len and largest. */ | 247 between len and largest. */ |
248 structure_checking_assert (start >= 0 && start <= Dynarr_length (dy)); | 248 dynarr_checking_assert (start >= 0 && start <= Dynarr_length (dy)); |
249 | 249 |
250 if (start != Dynarr_length (dy)) | 250 if (start != Dynarr_length (dy)) |
251 { | 251 { |
252 memmove ((char *) dy->base + (start + len)*dy->elsize, | 252 memmove ((char *) dy->base + (start + len)*dy->elsize, |
253 (char *) dy->base + start*dy->elsize, | 253 (char *) dy->base + start*dy->elsize, |
265 void | 265 void |
266 Dynarr_delete_many (void *d, int start, int len) | 266 Dynarr_delete_many (void *d, int start, int len) |
267 { | 267 { |
268 Dynarr *dy = Dynarr_verify_mod (d); | 268 Dynarr *dy = Dynarr_verify_mod (d); |
269 | 269 |
270 structure_checking_assert (start >= 0 && len >= 0 && | 270 dynarr_checking_assert (start >= 0 && len >= 0 && |
271 start + len <= Dynarr_length (dy)); | 271 start + len <= Dynarr_length (dy)); |
272 | 272 |
273 memmove ((char *) dy->base + start*dy->elsize, | 273 memmove ((char *) dy->base + start*dy->elsize, |
274 (char *) dy->base + (start + len)*dy->elsize, | 274 (char *) dy->base + (start + len)*dy->elsize, |
275 (Dynarr_length (dy) - start - len)*dy->elsize); | 275 (Dynarr_length (dy) - start - len)*dy->elsize); |
276 | 276 |