diff --git a/ccan/darray/darray.h b/ccan/darray/darray.h index 58470fdee..24d694973 100644 --- a/ccan/darray/darray.h +++ b/ccan/darray/darray.h @@ -311,7 +311,8 @@ static inline size_t darray_next_alloc(size_t alloc, size_t need) * Like darray_foreach, but traverse in reverse order. */ #define darray_foreach_reverse(i, arr) \ - for ((i) = &(arr).item[(arr).size]; (i)-- > &(arr).item[0]; ) + if ((arr).size) \ + for ((i) = &(arr).item[(arr).size]; (i)-- > &(arr).item[0]; ) #endif /* CCAN_DARRAY_H */