From 5027ee6bf5961a51ac2ea34f28ac045e2a54ed75 Mon Sep 17 00:00:00 2001 From: mfuchs1984 <57141790+mfuchs1984@users.noreply.github.com> Date: Sun, 9 Feb 2025 21:53:16 +0100 Subject: [PATCH] Ocpp: fix deadlock when using multiple connectors (#18705) --- charger/ocpp/cs.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/charger/ocpp/cs.go b/charger/ocpp/cs.go index 677e14ddf..7e0af87a8 100644 --- a/charger/ocpp/cs.go +++ b/charger/ocpp/cs.go @@ -75,12 +75,14 @@ func (cs *CS) RegisterChargepoint(id string, newfun func() *CP, init func(*CP) e cs.regs[id] = reg } + cs.mu.Unlock() + // serialise on chargepoint id reg.setup.Lock() defer reg.setup.Unlock() + cs.mu.Lock() cp := reg.cp - cs.mu.Unlock() // setup already completed?