lnrpc: fix websocket proxy data race

Was discovered in a race unit test in lightning node connect that uses
the websocket proxy to connect to the hashmail server on the client
side.
By not shadowing the err variable we end up reading and writing to the
same variable from two different goroutines, which causes the data race.
This commit is contained in:
Oliver Gugger
2022-03-29 18:15:43 +02:00
parent 6275a78c79
commit 40358d406d

View File

@@ -253,7 +253,7 @@ func (p *WebsocketProxy) upgradeToWebSocketProxy(w http.ResponseWriter,
payload = newPayload
}
_, err = requestForwarder.Write(payload)
_, err := requestForwarder.Write(payload)
if err != nil {
p.logger.Errorf("WS: error writing message "+
"to upstream http server: %v", err)
@@ -338,7 +338,7 @@ func (p *WebsocketProxy) upgradeToWebSocketProxy(w http.ResponseWriter,
continue
}
err = conn.WriteMessage(
err := conn.WriteMessage(
websocket.TextMessage, responseForwarder.Bytes(),
)
if err != nil {