Skip to content

Commit 12fed41

Browse files
committed
Fix deadlock when team is connected
1 parent f1a03b6 commit 12fed41

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

internal/app/rcon/team.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -139,8 +139,8 @@ func (s *TeamServer) handleClientConnection(conn net.Conn) {
139139

140140
s.clients[client.id] = client.Client
141141
defer func() {
142+
team := s.gcEngine.CurrentState().TeamByName(client.id)
142143
s.gcEngine.UpdateGcState(func(gcState *engine.GcState) {
143-
team := s.gcEngine.CurrentState().TeamByName(client.id)
144144
if teamState, ok := gcState.TeamState[team.String()]; ok {
145145
connected := false
146146
teamState.Connected = &connected
@@ -151,8 +151,8 @@ func (s *TeamServer) handleClientConnection(conn net.Conn) {
151151
}()
152152

153153
log.Printf("Client %v connected", client.id)
154+
team := s.gcEngine.CurrentState().TeamByName(client.id)
154155
s.gcEngine.UpdateGcState(func(gcState *engine.GcState) {
155-
team := s.gcEngine.CurrentState().TeamByName(client.id)
156156
if teamState, ok := gcState.TeamState[team.String()]; ok {
157157
connected := true
158158
teamState.Connected = &connected

0 commit comments

Comments
 (0)