From 377462ea6311d90074dd8073c3a52f989fd40221 Mon Sep 17 00:00:00 2001 From: Victor Julien Date: Wed, 13 May 2026 21:08:39 +0200 Subject: [PATCH] defrag: decrement memuse on alloc failure Ticket: #8613. --- src/defrag-hash.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/src/defrag-hash.c b/src/defrag-hash.c index a433a6d06f..fae8a882b6 100644 --- a/src/defrag-hash.c +++ b/src/defrag-hash.c @@ -97,15 +97,13 @@ static DefragTracker *DefragTrackerAlloc(void) (void) SC_ATOMIC_ADD(defrag_memuse, sizeof(DefragTracker)); DefragTracker *dt = SCCalloc(1, sizeof(DefragTracker)); - if (unlikely(dt == NULL)) - goto error; - + if (unlikely(dt == NULL)) { + (void)SC_ATOMIC_SUB(defrag_memuse, sizeof(DefragTracker)); + return NULL; + } SCMutexInit(&dt->lock, NULL); SC_ATOMIC_INIT(dt->use_cnt); return dt; - -error: - return NULL; } static void DefragTrackerFree(DefragTracker *dt)