From: Jeff Halter Date: Mon, 21 Nov 2022 16:27:35 +0000 (-0800) Subject: Merge pull request #82 from jhalter/fix_mutux_lock X-Git-Url: https://git.r.bdr.sh/rbdr/mobius/commitdiff_plain/210c231f9495aeb93ffcf5676069944dbb24550c?hp=bcd7859f4e07ba4fcdf8fdaf7ed2947b756885db Merge pull request #82 from jhalter/fix_mutux_lock Fix mutex deadlock bug on invalid client --- diff --git a/hotline/server.go b/hotline/server.go index bd15a2e..e28ff9a 100644 --- a/hotline/server.go +++ b/hotline/server.go @@ -152,13 +152,12 @@ func (s *Server) sendTransaction(t Transaction) error { } s.mux.Lock() + defer s.mux.Unlock() client := s.Clients[uint16(clientID)] if client == nil { return fmt.Errorf("invalid client id %v", *t.clientID) } - s.mux.Unlock() - b, err := t.MarshalBinary() if err != nil { return err