mirror of
https://github.com/v2ray/v2ray-core.git
synced 2026-11-02 16:21:05 +00:00
clean up on error
This commit is contained in:
1 parent
0bc846f016
commit
8d1f06ebaf
2 files changed
+4
-6
No files matched your search
@@ -23,6 +23,9 @@ type VMessOutboundHandler struct {
|
||||
}
|
||||
|
||||
func (this *VMessOutboundHandler) Dispatch(target v2net.Destination, payload *alloc.Buffer, ray ray.OutboundRay) error {
|
||||
defer ray.OutboundInput().Release()
|
||||
defer ray.OutboundOutput().Close()
|
||||
|
||||
destination, vNextUser := this.receiverManager.PickReceiver()
|
||||
|
||||
command := proto.RequestCommandTCP
|
||||
@@ -41,9 +44,6 @@ func (this *VMessOutboundHandler) Dispatch(target v2net.Destination, payload *al
|
||||
conn, err := dialer.Dial(destination)
|
||||
if err != nil {
|
||||
log.Error("Failed to open ", destination, ": ", err)
|
||||
if ray != nil {
|
||||
ray.OutboundOutput().Close()
|
||||
}
|
||||
return err
|
||||
}
|
||||
log.Info("VMessOut: Tunneling request to ", request.Address, " via ", destination)
|
||||
@@ -64,8 +64,6 @@ func (this *VMessOutboundHandler) Dispatch(target v2net.Destination, payload *al
|
||||
|
||||
requestFinish.Lock()
|
||||
responseFinish.Lock()
|
||||
output.Close()
|
||||
input.Release()
|
||||
return nil
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user