From e8bc2cdae8565f4ec43e1406e384161bf5f2c04b Mon Sep 17 00:00:00 2001 From: benoitc Date: Wed, 11 Aug 2010 10:35:53 +0200 Subject: [PATCH] row link should be set in acceptor not in _acceptor --- gunicorn/workers/ggevent.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gunicorn/workers/ggevent.py b/gunicorn/workers/ggevent.py index d32728cf..da861c4b 100644 --- a/gunicorn/workers/ggevent.py +++ b/gunicorn/workers/ggevent.py @@ -40,7 +40,7 @@ class GeventWorker(AsyncWorker): super(GeventWorker, self).__init__(*args, **kwargs) self._accept_event = None self.pool = Pool(self.worker_connections) - + @classmethod def setup(cls): @@ -51,12 +51,13 @@ class GeventWorker(AsyncWorker): return gevent.Timeout(self.cfg.keepalive, False) def acceptor(self): + self.pool._semaphore.rawlink(self._acceptor) if self._accept_event is None: self._accept_event = core.read_event(self.socket.fileno(), self._do_accept, persist=True) def _acceptor(self, event): - self.pool._semaphore.rawlink(self._acceptor) + if self._accept_event is None: if not self.alive: return