diff options
Diffstat (limited to 'lib/server.js')
-rw-r--r-- | lib/server.js | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/lib/server.js b/lib/server.js index 60595a8..2988f27 100644 --- a/lib/server.js +++ b/lib/server.js @@ -12,11 +12,16 @@ function Server (torrent, opts = {}) { const sockets = [] const pendingReady = [] let closed = false + const _listen = server.listen + const _close = server.close - server.on('connection', onConnection) - server.on('request', onRequest) + server.listen = port => { + closed = false + server.on('connection', onConnection) + server.on('request', onRequest) + _listen.call(server, port) + } - const _close = server.close server.close = cb => { closed = true server.removeListener('connection', onConnection) @@ -25,7 +30,6 @@ function Server (torrent, opts = {}) { const onReady = pendingReady.pop() torrent.removeListener('ready', onReady) } - torrent = null _close.call(server, cb) } |