Index: Lib/SocketServer.py =================================================================== --- Lib/SocketServer.py (revision 73272) +++ Lib/SocketServer.py (working copy) @@ -451,6 +451,7 @@ def close_request(self, request): """Called to clean up an individual request.""" + request.shutdown(socket.SHUT_WR) request.close() @@ -616,12 +617,11 @@ self.request = request self.client_address = client_address self.server = server + self.setup() try: - self.setup() self.handle() + finally: self.finish() - finally: - sys.exc_traceback = None # Help garbage collection def setup(self): pass