WireGuard proxy: Release packet views after use (#6801)
https://github.com/XTLS/Xray-core/pull/6801#issuecomment-5807228464
This commit is contained in:
1 parent
7d3e44fee2
commit
60e2a0c502
1 file changed
+2
@@ -136,6 +136,7 @@ func (tun *netTun) Read(buf [][]byte, sizes []int, offset int) (int, error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
n, err := view.Read(buf[0][offset:])
|
n, err := view.Read(buf[0][offset:])
|
||||||
|
view.Release()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return 0, err
|
return 0, err
|
||||||
}
|
}
|
||||||
@@ -175,6 +176,7 @@ func (tun *netTun) WriteNotify() {
|
|||||||
select {
|
select {
|
||||||
case tun.incomingPacket <- view:
|
case tun.incomingPacket <- view:
|
||||||
case <-tun.closed:
|
case <-tun.closed:
|
||||||
|
view.Release()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user