From 8f697b4903722308c710c4c5d2060238db50f968 Mon Sep 17 00:00:00 2001 From: Ben Darnell Date: Wed, 29 Jul 2015 23:02:42 -0400 Subject: [PATCH] Correctly clear IOLoop.current() after TwistedIOLoop exits. --- tornado/platform/twisted.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/tornado/platform/twisted.py b/tornado/platform/twisted.py index 7b3c8ca5e..0bb8d54fe 100644 --- a/tornado/platform/twisted.py +++ b/tornado/platform/twisted.py @@ -477,8 +477,15 @@ class TwistedIOLoop(tornado.ioloop.IOLoop): del self.fds[fd] def start(self): - self._setup_logging() - self.reactor.run() + old_current = IOLoop.current(instance=False) + try: + self._setup_logging() + self.reactor.run() + finally: + if old_current is None: + IOLoop.clear_current() + else: + old_current.make_current() def stop(self): self.reactor.crash() -- 2.47.2