From c7540b3e94d7712b6b91ba80de0155f20156f3f3 Mon Sep 17 00:00:00 2001 From: LK4D4 Date: Mon, 24 Mar 2014 22:31:05 +0400 Subject: [PATCH] Workaround for hanging events. Fixes #4804 Docker-DCO-1.1-Signed-off-by: LK4D4 (github: LK4D4) --- server/server.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/server/server.go b/server/server.go index 840a70357d..2cb3328d55 100644 --- a/server/server.go +++ b/server/server.go @@ -222,6 +222,10 @@ func (srv *Server) Events(job *engine.Job) engine.Status { listener := make(chan utils.JSONMessage) srv.Lock() + if old, ok := srv.listeners[from]; ok { + delete(srv.listeners, from) + close(old) + } srv.listeners[from] = listener srv.Unlock() job.Stdout.Write(nil) // flush