mirror of
https://github.com/mumble-voip/grumble.git
synced 2025-12-20 14:20:00 -08:00
Fix send on closed channel error.
This commit is contained in:
parent
190316b0a1
commit
4ca0fd3c55
1 changed files with 9 additions and 9 deletions
18
server.go
18
server.go
|
|
@ -277,16 +277,16 @@ func (server *Server) NewClient(conn net.Conn) (err os.Error) {
|
||||||
// internal representation.
|
// internal representation.
|
||||||
func (server *Server) RemoveClient(client *Client, kicked bool) {
|
func (server *Server) RemoveClient(client *Client, kicked bool) {
|
||||||
server.hmutex.Lock()
|
server.hmutex.Lock()
|
||||||
if client.udpaddr != nil {
|
host := client.tcpaddr.IP.String()
|
||||||
host := client.udpaddr.IP.String()
|
oldclients := server.hclients[host]
|
||||||
oldclients := server.hclients[host]
|
newclients := []*Client{}
|
||||||
newclients := []*Client{}
|
for _, hostclient := range oldclients {
|
||||||
for _, hostclient := range oldclients {
|
if hostclient != client {
|
||||||
if hostclient != client {
|
newclients = append(newclients, hostclient)
|
||||||
newclients = append(newclients, hostclient)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
server.hclients[host] = newclients
|
}
|
||||||
|
server.hclients[host] = newclients
|
||||||
|
if client.udpaddr != nil {
|
||||||
server.hpclients[client.udpaddr.String()] = nil, false
|
server.hpclients[client.udpaddr.String()] = nil, false
|
||||||
}
|
}
|
||||||
server.hmutex.Unlock()
|
server.hmutex.Unlock()
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue