From 52bc74f22150183111bc0da9cd2c29de440a50b5 Mon Sep 17 00:00:00 2001 From: antirez Date: Thu, 4 May 2017 10:35:32 +0200 Subject: [PATCH] Lazyfree: fix lazyfreeGetPendingObjectsCount() race reading counter. --- src/lazyfree.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/lazyfree.c b/src/lazyfree.c index 8d56e103..64ed6846 100644 --- a/src/lazyfree.c +++ b/src/lazyfree.c @@ -8,7 +8,9 @@ pthread_mutex_t lazyfree_objects_mutex = PTHREAD_MUTEX_INITIALIZER; /* Return the number of currently pending objects to free. */ size_t lazyfreeGetPendingObjectsCount(void) { - return lazyfree_objects; + size_t aux; + atomicGet(lazyfree_objects,aux,lazyfree_objects_mutex); + return aux; } /* Return the amount of work needed in order to free an object.