Replace with REALLOC_ARY whenever the array object size is not 1
In subnet_list_set_len and ipset_set_len we abolish the unnecessary
temporary variable `nd'. In subnet_list_set_len we also simplify the
assert integer overflow condition (the division is not needed because
REALLOC_ARY and hence safe_malloc_ary will check for potential
multiplication overflow).
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
static void subnet_list_set_len(struct subnet_list *a, int32_t l)
{
static void subnet_list_set_len(struct subnet_list *a, int32_t l)
{
int32_t na;
if (l>a->alloc) {
int32_t na;
if (l>a->alloc) {
- assert(a->alloc < (int)(INT_MAX/sizeof(*nd))-EXTEND_ALLOC_BY);
+ assert(a->alloc < INT_MAX-EXTEND_ALLOC_BY);
na=a->alloc+EXTEND_ALLOC_BY;
na=a->alloc+EXTEND_ALLOC_BY;
- nd=safe_realloc_ary(a->list,sizeof(*nd),na,"subnet_list_set_len");
+ REALLOC_ARY(a->list,na);
static void ipset_set_len(struct ipset *a, int32_t l)
{
static void ipset_set_len(struct ipset *a, int32_t l)
{
int32_t na;
if (l>a->a) {
assert(a->a < INT_MAX-EXTEND_ALLOC_BY);
na=a->a+EXTEND_ALLOC_BY;
int32_t na;
if (l>a->a) {
assert(a->a < INT_MAX-EXTEND_ALLOC_BY);
na=a->a+EXTEND_ALLOC_BY;
- nd=safe_realloc_ary(a->d,sizeof(*nd),na,"ipset_set_len");
if (shortfall) {
allocdfds *= 2;
allocdfds += shortfall;
if (shortfall) {
allocdfds *= 2;
allocdfds += shortfall;
- fds=safe_realloc_ary(fds,sizeof(*fds),allocdfds, "run");
+ REALLOC_ARY(fds,allocdfds);