fix race condition
This commit is contained in:
@ -130,7 +130,7 @@ func (h *ssuHandler) relayPacket(pc1, pc2 net.PacketConn, log logger.Logger) (er
|
||||
b := bufpool.Get(bufSize)
|
||||
defer bufpool.Put(b)
|
||||
|
||||
n, addr, err := pc1.ReadFrom(*b)
|
||||
n, addr, err := pc1.ReadFrom(b)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
@ -140,7 +140,7 @@ func (h *ssuHandler) relayPacket(pc1, pc2 net.PacketConn, log logger.Logger) (er
|
||||
return nil
|
||||
}
|
||||
|
||||
if _, err = pc2.WriteTo((*b)[:n], addr); err != nil {
|
||||
if _, err = pc2.WriteTo(b[:n], addr); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
@ -162,7 +162,7 @@ func (h *ssuHandler) relayPacket(pc1, pc2 net.PacketConn, log logger.Logger) (er
|
||||
b := bufpool.Get(bufSize)
|
||||
defer bufpool.Put(b)
|
||||
|
||||
n, raddr, err := pc2.ReadFrom(*b)
|
||||
n, raddr, err := pc2.ReadFrom(b)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
@ -172,7 +172,7 @@ func (h *ssuHandler) relayPacket(pc1, pc2 net.PacketConn, log logger.Logger) (er
|
||||
return nil
|
||||
}
|
||||
|
||||
if _, err = pc1.WriteTo((*b)[:n], raddr); err != nil {
|
||||
if _, err = pc1.WriteTo(b[:n], raddr); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user