From 5f268351d1de3218ffc0f6437595d11df7db616d Mon Sep 17 00:00:00 2001 From: Syndamia Date: Tue, 21 Apr 2026 21:43:24 +0300 Subject: fix: Do not produce side effects on failed resize --- Array.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'Array.c') diff --git a/Array.c b/Array.c index 60dc82d..6be8c1a 100644 --- a/Array.c +++ b/Array.c @@ -62,7 +62,9 @@ A_push(Array arr, void *value) { if (am->count >= am->length) { if (!B_resizeable(am->b, arr)) return R_OutOfBounds; - RETURN_NOTOK(B_resize(am->b, sizeof(*am) + am->element_size * (am->length <<= 1))); + + RETURN_NOTOK(B_resize(am->b, sizeof(*am) + am->element_size * (am->length << 1))); + am->length <<= 1; } memcpy(arr + am->count++ * am->element_size, value, am->element_size); -- cgit v1.2.3