Skip to content

Commit 446d882

Browse files
committed
exit loops early where possible
1 parent 21a54df commit 446d882

4 files changed

Lines changed: 28 additions & 9 deletions

File tree

internal/gameServer/server.go

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -186,8 +186,10 @@ func (g *GameServer) ManagePlayers() {
186186
if v.(Client).Number == int(i) {
187187
g.Players.Delete(k)
188188
g.NeedsUpdatePlayers.Store(true)
189+
return false
190+
} else {
191+
return true
189192
}
190-
return true
191193
})
192194
g.gameData.bufferHealth[i] = g.gameData.bufferHealth[i][:0]
193195
}
@@ -211,8 +213,10 @@ func (g *GameServer) IsRoomCreator(socket *websocket.Conn) bool {
211213
g.Players.Range(func(k, v any) bool {
212214
if v.(*Client).Number == 0 && v.(*Client).Socket == socket {
213215
roomCreator = true
216+
return false
217+
} else {
218+
return true
214219
}
215-
return true
216220
})
217221
return roomCreator
218222
}

internal/gameServer/tcp.go

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -346,8 +346,10 @@ func (g *GameServer) processTCP(conn *net.TCPConn) {
346346
if v.(Client).Number == int(i) {
347347
g.Players.Delete(k)
348348
g.NeedsUpdatePlayers.Store(true)
349+
return false
350+
} else {
351+
return true
349352
}
350-
return true
351353
})
352354

353355
g.gameData.bufferHealth[i] = g.gameData.bufferHealth[i][:0]
@@ -410,8 +412,11 @@ func (g *GameServer) watchTCP() {
410412
g.Players.Range(func(k, v any) bool {
411413
if remoteAddr.IP.Equal(v.(Client).IP) {
412414
validated = true
415+
return false
416+
} else {
417+
return true
413418
}
414-
return true
419+
415420
})
416421
if !validated {
417422
g.Logger.Error(fmt.Errorf("invalid tcp connection"), "bad IP", "IP", conn.RemoteAddr().String())

internal/gameServer/udp.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -185,8 +185,10 @@ func (g *GameServer) watchUDP() {
185185
g.Players.Range(func(k, v any) bool {
186186
if addr.IP.Equal(v.(Client).IP) {
187187
validated = true
188+
return false
189+
} else {
190+
return true
188191
}
189-
return true
190192
})
191193
if !validated {
192194
g.Logger.Error(fmt.Errorf("invalid udp connection"), "bad IP", "IP", addr.IP)

internal/lobbyServer/lobby.go

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -310,8 +310,10 @@ func (s *LobbyServer) wsHandler(w http.ResponseWriter, r *http.Request) {
310310
w.(*gameserver.Client).InLobby = false
311311
}
312312
s.updatePlayers(v)
313+
return false
314+
} else {
315+
return true
313316
}
314-
return true
315317
})
316318
if !v.Running {
317319
if v.GetPlayersLength() == 0 {
@@ -505,8 +507,10 @@ func (s *LobbyServer) wsHandler(w http.ResponseWriter, r *http.Request) {
505507
g.Players.Range(func(k, i any) bool {
506508
if receivedMessage.PlayerName == k {
507509
duplicateName = true
510+
return false
511+
} else {
512+
return true
508513
}
509-
return true
510514
})
511515
if g.Password != "" && g.Password != receivedMessage.Room.Password {
512516
accepted = BadPassword
@@ -537,8 +541,10 @@ func (s *LobbyServer) wsHandler(w http.ResponseWriter, r *http.Request) {
537541
g.Players.Range(func(k, v any) bool {
538542
if v.(*gameserver.Client).Number == number {
539543
goodNumber = false
544+
return false
545+
} else {
546+
return true
540547
}
541-
return true
542548
})
543549
if goodNumber {
544550
break
@@ -634,8 +640,10 @@ func (s *LobbyServer) wsHandler(w http.ResponseWriter, r *http.Request) {
634640
g.Players.Range(func(k, v any) bool {
635641
if !v.(*gameserver.Client).IP.IsPrivate() {
636642
privateNetwork = false
643+
return false
644+
} else {
645+
return true
637646
}
638-
return true
639647
})
640648
if privateNetwork {
641649
g.BufferTarget = 1

0 commit comments

Comments
 (0)