mirror of
https://github.com/go-micro/go-micro.git
synced 2025-04-11 11:02:02 +02:00
[fix] http transport deadlock (#2441)
Co-authored-by: Hunyadvári Péter <peter.hunyadvari@vcc.live>
This commit is contained in:
parent
4154ed6a80
commit
dca3a3b553
@ -141,6 +141,7 @@ func (h *httpTransportClient) Recv(m *Message) error {
|
|||||||
|
|
||||||
h.Lock()
|
h.Lock()
|
||||||
if h.closed {
|
if h.closed {
|
||||||
|
h.Unlock()
|
||||||
return io.EOF
|
return io.EOF
|
||||||
}
|
}
|
||||||
rsp, err := http.ReadResponse(h.buff, r)
|
rsp, err := http.ReadResponse(h.buff, r)
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
package transport
|
package transport
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
|
||||||
"io"
|
"io"
|
||||||
"net"
|
"net"
|
||||||
"sync"
|
"sync"
|
||||||
@ -303,11 +302,11 @@ func TestHTTPTransportCloseWhenRecv(t *testing.T) {
|
|||||||
|
|
||||||
if err := c.Recv(&rm); err != nil {
|
if err := c.Recv(&rm); err != nil {
|
||||||
if err == io.EOF {
|
if err == io.EOF {
|
||||||
|
c.Recv(&rm)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
t.Errorf("Unexpected recv err: %v", err)
|
t.Errorf("Unexpected recv err: %v", err)
|
||||||
}
|
}
|
||||||
fmt.Println("aa")
|
|
||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
for i := 1; i < 3; i++ {
|
for i := 1; i < 3; i++ {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user