2
0
Эх сурвалжийг харах

ipn/ipnlocal: remove web client listeners after close

This prevents a panic in some cases where WebClientShutdown is called
multiple times.

Updates tailscale/corp#14335

Signed-off-by: Will Norris <[email protected]>
Will Norris 2 жил өмнө
parent
commit
79719f05a9

+ 2 - 1
ipn/ipnlocal/web_client.go

@@ -79,8 +79,9 @@ func (b *LocalBackend) WebClientShutdown() {
 	b.mu.Lock()
 	server := b.webClient.server
 	b.webClient.server = nil
-	for _, ln := range b.webClientListeners {
+	for ap, ln := range b.webClientListeners {
 		ln.Close()
+		delete(b.webClientListeners, ap)
 	}
 	b.mu.Unlock() // release lock before shutdown
 	if server != nil {