You call io.Pipe() at https://github.com/tmc/grpc-websocket-proxy/blob/673ab2c3ae75cc01952b84b88590e30e75dcf395/wsproxy/websocket_proxy.go#L186 then you lose it at https://github.com/tmc/grpc-websocket-proxy/blob/673ab2c3ae75cc01952b84b88590e30e75dcf395/wsproxy/websocket_proxy.go#L188 `(When error happens at http.NewRequestWithContext you don't close requestBodyW and responseBodyW)` io.Pipe docs https://pkg.go.dev/io#Pipe
You call io.Pipe() at
grpc-websocket-proxy/wsproxy/websocket_proxy.go
Line 186 in 673ab2c
then you lose it at
grpc-websocket-proxy/wsproxy/websocket_proxy.go
Line 188 in 673ab2c
(When error happens at http.NewRequestWithContext you don't close requestBodyW and responseBodyW)io.Pipe docs
https://pkg.go.dev/io#Pipe