summary refs log tree commit diff stats
path: root/lib/pure/asyncnet.nim
diff options
context:
space:
mode:
Diffstat (limited to 'lib/pure/asyncnet.nim')
-rw-r--r--lib/pure/asyncnet.nim4
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/pure/asyncnet.nim b/lib/pure/asyncnet.nim
index a16111349..c6918517e 100644
--- a/lib/pure/asyncnet.nim
+++ b/lib/pure/asyncnet.nim
@@ -67,7 +67,8 @@ type
   # PAsyncSocket* {.borrow: `.`.} = distinct PSocket. But that doesn't work.
   AsyncSocketDesc  = object
     fd*: SocketHandle
-    case isBuffered*: bool # determines whether this socket is buffered.
+    closed*: bool ## determines whether this socket has been closed
+    case isBuffered*: bool ## determines whether this socket is buffered.
     of true:
       buffer*: array[0..BufferSize, char]
       currPos*: int # current index in buffer
@@ -400,6 +401,7 @@ proc close*(socket: PAsyncSocket) =
           raiseSslError()
       elif res != 1:
         raiseSslError()
+  socket.closed = true # TODO: Add extra debugging checks for this.
 
 when defined(ssl):
   proc wrapSocket*(ctx: SslContext, socket: AsyncSocket) =