diff --git a/lib/server.js b/lib/server.js
index <HASH>..<HASH> 100644
--- a/lib/server.js
+++ b/lib/server.js
@@ -15,11 +15,11 @@ function Server (torrent, opts = {}) {
   const _listen = server.listen
   const _close = server.close
 
-  server.listen = port => {
+  server.listen = (...args) => {
     closed = false
     server.on('connection', onConnection)
     server.on('request', onRequest)
-    _listen.call(server, port)
+    _listen.apply(server, args)
   }
 
   server.close = cb => {
@@ -42,6 +42,7 @@ function Server (torrent, opts = {}) {
     if (!cb) cb = () => {}
     if (closed) process.nextTick(cb)
     else server.close(cb)
+    torrent = null
   }
 
   function isOriginAllowed (req) {
ability to close and restore streamin server