diff --git a/Lib/asyncore.py b/Lib/asyncore.py
index 8d8d88f..9c36977 100644
--- a/Lib/asyncore.py
+++ b/Lib/asyncore.py
@@ -509,7 +509,7 @@
         write = send
 
         def close(self):
-            return os.close(self.fd)
+            os.close(self.fd)
 
         def fileno(self):
             return self.fd
@@ -519,11 +519,11 @@
         def __init__(self, fd, map=None):
             dispatcher.__init__(self, None, map)
             self.connected = True
+            self.set_file(fd)
             # set it to non-blocking mode
             flags = fcntl.fcntl(fd, fcntl.F_GETFL, 0)
             flags = flags | os.O_NONBLOCK
             fcntl.fcntl(fd, fcntl.F_SETFL, flags)
-            self.set_file(fd)
 
         def set_file(self, fd):
             self._fileno = fd
