diff options
Diffstat (limited to 'transports')
-rw-r--r-- | transports/obfs2/obfs2.go | 3 | ||||
-rw-r--r-- | transports/obfs3/obfs3.go | 3 | ||||
-rw-r--r-- | transports/scramblesuit/base.go | 3 |
3 files changed, 6 insertions, 3 deletions
diff --git a/transports/obfs2/obfs2.go b/transports/obfs2/obfs2.go index a926141..8fa6cb8 100644 --- a/transports/obfs2/obfs2.go +++ b/transports/obfs2/obfs2.go @@ -113,8 +113,9 @@ func (cf *obfs2ClientFactory) Dial(network, addr string, dialFn base.DialFunc, a if err != nil { return nil, err } + dialConn := conn if conn, err = newObfs2ClientConn(conn); err != nil { - conn.Close() + dialConn.Close() return nil, err } return conn, nil diff --git a/transports/obfs3/obfs3.go b/transports/obfs3/obfs3.go index e4c3ba6..08d6be4 100644 --- a/transports/obfs3/obfs3.go +++ b/transports/obfs3/obfs3.go @@ -97,8 +97,9 @@ func (cf *obfs3ClientFactory) Dial(network, addr string, dialFn base.DialFunc, a if err != nil { return nil, err } + dialConn := conn if conn, err = newObfs3ClientConn(conn); err != nil { - conn.Close() + dialConn.Close() return nil, err } return conn, nil diff --git a/transports/scramblesuit/base.go b/transports/scramblesuit/base.go index 223d085..7a71398 100644 --- a/transports/scramblesuit/base.go +++ b/transports/scramblesuit/base.go @@ -87,8 +87,9 @@ func (cf *ssClientFactory) Dial(network, addr string, dialFn base.DialFunc, args if err != nil { return nil, err } + dialConn := conn if conn, err = newScrambleSuitClientConn(conn, cf.ticketStore, ca); err != nil { - conn.Close() + dialConn.Close() return nil, err } return conn, nil |