X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Flibpspp%2Fdeque.c;h=a511cf3ad0e2a10b860dfe65896dc03ef6ab7418;hb=bc5c6c1953ada1737620e27e6a968392a38d8c8f;hp=d34d6c625a8791bcbaf1213018c6215e3c847ff2;hpb=43b1296aafe7582e7dbe6c2b6a8b478d7d9b0fcf;p=pspp diff --git a/src/libpspp/deque.c b/src/libpspp/deque.c index d34d6c625a..a511cf3ad0 100644 --- a/src/libpspp/deque.c +++ b/src/libpspp/deque.c @@ -1,5 +1,5 @@ /* PSPP - a program for statistical analysis. - Copyright (C) 2007 Free Software Foundation, Inc. + Copyright (C) 2007, 2011 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -16,11 +16,12 @@ #include -#include +#include "libpspp/deque.h" + #include -#include "minmax.h" -#include "xalloc.h" +#include "gl/minmax.h" +#include "gl/xalloc.h" /* Initializes DEQUE as an empty deque with an initial capacity of zero. */ @@ -59,15 +60,15 @@ deque_expand (struct deque *deque, void *old_data_, size_t elem_size) size_t new_capacity = MAX (4, old_capacity * 2); char *old_data = old_data_; char *new_data = xnmalloc (new_capacity, elem_size); - size_t idx, copy_cnt; - for (idx = deque->back; idx != deque->front; idx += copy_cnt) + size_t idx, n_copy; + for (idx = deque->back; idx != deque->front; idx += n_copy) { size_t can_copy = old_capacity - (idx & (old_capacity - 1)); size_t want_copy = deque->front - idx; - copy_cnt = MIN (can_copy, want_copy); + n_copy = MIN (can_copy, want_copy); memcpy (new_data + (idx & (new_capacity - 1)) * elem_size, old_data + (idx & (old_capacity - 1)) * elem_size, - copy_cnt * elem_size); + n_copy * elem_size); } deque->capacity = new_capacity; free (old_data);