fix: some safeConnClose forget using original

This commit is contained in:
wwqgtxx
2022-12-22 12:31:45 +08:00
parent 980454beb2
commit daf0b23805
3 changed files with 16 additions and 16 deletions

View File

@ -221,9 +221,9 @@ func (v *Vmess) DialContext(ctx context.Context, metadata *C.Metadata, opts ...d
if err != nil {
return nil, err
}
defer func() {
defer func(c net.Conn) {
safeConnClose(c, err)
}()
}(c)
c, err = v.client.DialConn(c, M.ParseSocksaddr(metadata.RemoteAddress()))
if err != nil {
@ -275,9 +275,9 @@ func (v *Vmess) ListenPacketContext(ctx context.Context, metadata *C.Metadata, o
if err != nil {
return nil, err
}
defer func() {
defer func(c net.Conn) {
safeConnClose(c, err)
}()
}(c)
if v.option.XUDP {
c, err = v.client.DialXUDPPacketConn(c, M.ParseSocksaddr(metadata.RemoteAddress()))
@ -295,9 +295,9 @@ func (v *Vmess) ListenPacketContext(ctx context.Context, metadata *C.Metadata, o
return nil, fmt.Errorf("%s connect error: %s", v.addr, err.Error())
}
tcpKeepAlive(c)
defer func() {
defer func(c net.Conn) {
safeConnClose(c, err)
}()
}(c)
c, err = v.StreamConn(c, metadata)
return v.ListenPacketWithDialer(ctx, dialer.NewDialer(v.Base.DialOptions(opts...)...), metadata)