diff --git a/common/mux/client.go b/common/mux/client.go index ab729ef71..1d0180eef 100644 --- a/common/mux/client.go +++ b/common/mux/client.go @@ -188,7 +188,6 @@ var ( // NewClientWorker creates a new mux.Client. func NewClientWorker(stream transport.Link, s ClientStrategy) (*ClientWorker, error) { - stream.Writer = &MutexWriter{Writer: stream.Writer} c := &ClientWorker{ sessionManager: NewSessionManager(), link: stream, diff --git a/common/mux/server.go b/common/mux/server.go index 8dd48a131..c23a3789e 100644 --- a/common/mux/server.go +++ b/common/mux/server.go @@ -95,7 +95,7 @@ type ServerWorker struct { func NewServerWorker(ctx context.Context, d routing.Dispatcher, link *transport.Link) (*ServerWorker, error) { worker := &ServerWorker{ dispatcher: d, - link: &transport.Link{Reader: link.Reader, Writer: &MutexWriter{Writer: link.Writer}}, + link: link, sessionManager: NewSessionManager(), done: done.New(), timer: time.NewTicker(60 * time.Second), diff --git a/common/mux/writer.go b/common/mux/writer.go index ac5ec6c4f..0429f4fab 100644 --- a/common/mux/writer.go +++ b/common/mux/writer.go @@ -1,8 +1,6 @@ package mux import ( - "sync" - "github.com/xtls/xray-core/common" "github.com/xtls/xray-core/common/buf" "github.com/xtls/xray-core/common/net" @@ -11,17 +9,6 @@ import ( "github.com/xtls/xray-core/common/session" ) -type MutexWriter struct { - sync.Mutex - buf.Writer -} - -func (w *MutexWriter) WriteMultiBuffer(mb buf.MultiBuffer) error { - w.Lock() - defer w.Unlock() - return w.Writer.WriteMultiBuffer(mb) -} - type Writer struct { dest net.Destination writer buf.Writer