From 4618b255eae0a2a7e36cbdb50276d734f039bd52 Mon Sep 17 00:00:00 2001 From: jinyaoguo Date: Sun, 25 May 2025 15:21:23 -0400 Subject: [PATCH] Fix memory leak in function benchMem `speedPerRound` is allocated at the start of benchMem to collect per-round speeds, but is never freed, causing a leak on each invocation. --- contrib/largeNbDicts/largeNbDicts.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/contrib/largeNbDicts/largeNbDicts.c b/contrib/largeNbDicts/largeNbDicts.c index 6502f1227..6b6cc34ca 100644 --- a/contrib/largeNbDicts/largeNbDicts.c +++ b/contrib/largeNbDicts/largeNbDicts.c @@ -739,6 +739,8 @@ static int benchMem(slice_collection_t dstBlocks, slice_collection_t srcBlocks, /* BMK_benchTimedFn may not run exactly nbRounds iterations */ double speedAggregated = aggregateData(speedPerRound, roundNb + 1, metricAggregatePref); + free(speedPerRound); + if (metricAggregatePref == fastest) DISPLAY("Fastest Speed : %.1f MB/s \n", speedAggregated); else -- 2.47.2