From 6ad29e721ed14d1bfbad3a499d3265a293ee4b7c Mon Sep 17 00:00:00 2001 From: Marten Seemann Date: Mon, 28 Sep 2020 10:47:36 +0700 Subject: [PATCH] fix error handling when receiving post handshake messages --- internal/handshake/crypto_setup.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/internal/handshake/crypto_setup.go b/internal/handshake/crypto_setup.go index 9ce120888..479514ee8 100644 --- a/internal/handshake/crypto_setup.go +++ b/internal/handshake/crypto_setup.go @@ -499,7 +499,11 @@ func (h *cryptoSetup) handlePostHandshakeMessage() { }() if err := h.conn.HandlePostHandshakeMessage(); err != nil { - h.onError(<-alertChan, err.Error()) + select { + case <-h.closeChan: + case alert := <-alertChan: + h.onError(alert, err.Error()) + } } }