From 0ed9dfdd830789b2c28b06d34efc00a00f47f34f Mon Sep 17 00:00:00 2001 From: Sebastian Reimers Date: Tue, 31 Oct 2023 12:38:07 +0100 Subject: [PATCH] async: fix re_async_cancel mqueue handling Since we can't clear/revert a mqueue_push, free list handling has always be done by async queueh and not within re_async_cancel. --- src/async/async.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/async/async.c b/src/async/async.c index 7d37ac7f8..8610abb1d 100644 --- a/src/async/async.c +++ b/src/async/async.c @@ -333,7 +333,7 @@ void re_async_cancel(struct re_async *async, intptr_t id) w->workh = NULL; w->cb = NULL; w->arg = mem_deref(w->arg); - list_move(&w->le, &async->freel); + /* No move to free list since queueh must always handled */ mtx_unlock(w->mtx); } @@ -351,7 +351,7 @@ void re_async_cancel(struct re_async *async, intptr_t id) w->workh = NULL; w->cb = NULL; w->arg = mem_deref(w->arg); - list_move(&w->le, &async->freel); + /* No move to free list since queueh must always handled */ mtx_unlock(w->mtx); }