diff options
| -rw-r--r-- | src/array.c | 2 | ||||
| -rw-r--r-- | tests/array.c | 2 |
2 files changed, 3 insertions, 1 deletions
diff --git a/src/array.c b/src/array.c index d29aa8b..b695219 100644 --- a/src/array.c +++ b/src/array.c @@ -64,7 +64,7 @@ if (i == (array).count - 1) { \ (array).count--; \ } else { \ - al_assert((u32)i < (array).count); \ + al_assert((u32)i < (array).count - 1); \ al_memmove(al_array_offset(array, i), al_array_offset(array, i + 1), \ al_array_item_size(array) * (--(array).count - i)); \ } \ diff --git a/tests/array.c b/tests/array.c index 35b36e7..fce9d5f 100644 --- a/tests/array.c +++ b/tests/array.c @@ -335,6 +335,7 @@ static bool array_test_foreach(void) u32 iter1; al_array_foreach_rev(ints, i, iter1) { + AL_TEST_LT(i, ints.count, u32); AL_TEST_EQ(iter1, i, u32); } @@ -345,6 +346,7 @@ static bool array_test_foreach(void) u32 iter2; al_array_foreach_rev(ints, i, iter2) { + AL_TEST_LT(i, ints.count, u32); AL_TEST_EQ(iter2, i, u32); al_array_remove_at(ints, i); } |