From ccaac122f3a1fdf208c35b657a01eea57427bf53326fe31ac4beb76fc3821ae0 Mon Sep 17 00:00:00 2001 From: Sergey Matveev Date: Mon, 16 Jun 2025 12:11:52 +0300 Subject: [PATCH] Count number of reallocs --- c/lib/items.c | 2 ++ c/lib/items.h | 1 + 2 files changed, 3 insertions(+) diff --git a/c/lib/items.c b/c/lib/items.c index 7d18f95..7d3fc7e 100644 --- a/c/lib/items.c +++ b/c/lib/items.c @@ -32,6 +32,7 @@ KEKSItemsInit(struct KEKSItems *items, const ptrdiff_t initialLen) { items->len = 0; items->cap = initialLen; + items->reallocs = 0; items->list = calloc((size_t)(items->cap), sizeof(struct KEKSItem)); if (items->list == NULL) { return KEKSErrNoMem; @@ -89,6 +90,7 @@ KEKSItemsGrow(struct KEKSItems *items) } size_t begin = items->len * sizeof(struct KEKSItem); memset((unsigned char *)(items->list) + begin, 0, size - begin); + items->reallocs++; if (items->offsets != NULL) { size = (size_t)(items->cap) * sizeof(size_t); diff --git a/c/lib/items.h b/c/lib/items.h index 7828c38..0192c91 100644 --- a/c/lib/items.h +++ b/c/lib/items.h @@ -52,6 +52,7 @@ struct KEKSItems { struct KEKSItem *list; size_t *offsets; size_t len; + size_t reallocs; ptrdiff_t cap; }; -- 2.50.0