summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--pkarr.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/pkarr.h b/pkarr.h
index d3e43ea..0d5cef9 100644
--- a/pkarr.h
+++ b/pkarr.h
@@ -303,7 +303,7 @@ bool
pk_arr_iter_begin(struct pk_arr *arr, struct pk_iter *it) {
it->data = nullptr;
it->id.arr.i = 0;
- if (arr->data != nullptr && arr->data != CAFE_BABE(void)) {
+ if (arr->next > 0 && arr->data != nullptr && arr->data != CAFE_BABE(void)) {
it->data = arr->data;
return true;
}
@@ -313,7 +313,7 @@ pk_arr_iter_begin(struct pk_arr *arr, struct pk_iter *it) {
bool pk_arr_iter_end(struct pk_arr *arr, struct pk_iter *it) {
it->data = nullptr;
it->id.arr.i = 0;
- if (arr->data != nullptr && arr->data != CAFE_BABE(void)) {
+ if (arr->next > 0 && arr->data != nullptr && arr->data != CAFE_BABE(void)) {
it->id.arr.i = arr->next - 1;
it->data = (void *)((char*)arr->data + (arr->stride * it->id.arr.i));
return true;