From a6b946487cbd40aaa9867930235c1d2ed7017f53 Mon Sep 17 00:00:00 2001 From: Anmol Sethi Date: Fri, 13 Oct 2023 02:23:30 -0700 Subject: [PATCH] conn: Add noCopy Closes #349 --- conn.go | 5 +++++ ws_js.go | 4 ++++ 2 files changed, 9 insertions(+) diff --git a/conn.go b/conn.go index ab37248e..17a6b966 100644 --- a/conn.go +++ b/conn.go @@ -42,6 +42,8 @@ const ( // This applies to context expirations as well unfortunately. // See https://github.com/nhooyr/websocket/issues/242#issuecomment-633182220 type Conn struct { + noCopy + subprotocol string rwc io.ReadWriteCloser client bool @@ -288,3 +290,6 @@ func (m *mu) unlock() { default: } } + +type noCopy struct{} +func (*noCopy) Lock() {} diff --git a/ws_js.go b/ws_js.go index 3248933c..05f2202e 100644 --- a/ws_js.go +++ b/ws_js.go @@ -40,6 +40,7 @@ const ( // Conn provides a wrapper around the browser WebSocket API. type Conn struct { + noCopy ws wsjs.WebSocket // read limit for a message in bytes. @@ -563,3 +564,6 @@ func (m *mu) unlock() { default: } } + +type noCopy struct{} +func (*noCopy) Lock() {}