From 1ec34824d3fe29a33782829348e2fc0ac76023ee Mon Sep 17 00:00:00 2001 From: Robin Jarry Date: Sun, 29 Dec 2024 17:21:53 +0100 Subject: [PATCH] worker: fix potential race in post action Signed-off-by: Robin Jarry --- worker/types/worker.go | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/worker/types/worker.go b/worker/types/worker.go index 897d6654..ba925d71 100644 --- a/worker/types/worker.go +++ b/worker/types/worker.go @@ -106,14 +106,13 @@ func (worker *Worker) processQueue() { // from the same goroutine that the worker runs in or deadlocks may occur func (worker *Worker) PostAction(msg WorkerMessage, cb func(msg WorkerMessage)) { worker.setId(msg) - // write to actions channel without blocking - worker.queue(msg) - if cb != nil { worker.Lock() worker.actionCallbacks[msg.getId()] = cb worker.Unlock() } + // write to actions channel without blocking + worker.queue(msg) } var WorkerMessages = make(chan WorkerMessage, 50)