From 56e1d90ab6a72ea29219bbd443764a439ab4cd15 Mon Sep 17 00:00:00 2001 From: Benoit Chesneau Date: Wed, 17 Feb 2010 13:32:43 +0100 Subject: [PATCH] close tmp in the right place. --- gunicorn/arbiter.py | 17 ++++++++++------- gunicorn/sock.py | 2 +- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/gunicorn/arbiter.py b/gunicorn/arbiter.py index 863644f5..0fd722ea 100644 --- a/gunicorn/arbiter.py +++ b/gunicorn/arbiter.py @@ -377,6 +377,10 @@ class Arbiter(object): sys.exit(-1) finally: self.log.info("Worker %s exiting." % worker_pid) + try: + worker.tmp.close() + except: + pass def kill_workers(self, sig): """ kill all workers with signal sig @@ -384,7 +388,7 @@ class Arbiter(object): """ for pid in self.WORKERS.keys(): self.kill_worker(pid, sig) - + def kill_worker(self, pid, sig): """ kill a worker @@ -396,9 +400,8 @@ class Arbiter(object): except OSError, e: if e.errno == errno.ESRCH: worker = self.WORKERS.pop(pid) - raise - finally: - try: - worker.tmp.close() - except: - pass + try: + worker.tmp.close() + except: + pass + raise diff --git a/gunicorn/sock.py b/gunicorn/sock.py index 39aac97a..5c03f666 100644 --- a/gunicorn/sock.py +++ b/gunicorn/sock.py @@ -67,7 +67,7 @@ class UnixSocket(BaseSocket): return "unix:%s" % self.address def create_socket(addr): - """\ + """ Create a new socket for the given address. If the address is a tuple, a TCP socket is created. If it is a string, a Unix socket is created. Otherwise