From 40bc38bb2f0c28d9f1287b03025a5cbb2876dc79 Mon Sep 17 00:00:00 2001 From: benoitc Date: Tue, 27 Aug 2013 11:17:03 +0200 Subject: [PATCH] support wsgi.file_wrapper in async workers --- gunicorn/workers/async.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/gunicorn/workers/async.py b/gunicorn/workers/async.py index 1e55789d..9a327132 100644 --- a/gunicorn/workers/async.py +++ b/gunicorn/workers/async.py @@ -94,8 +94,11 @@ class AsyncWorker(base.Worker): if respiter == ALREADY_HANDLED: return False try: - for item in respiter: - resp.write(item) + if isinstance(respiter, environ['wsgi.file_wrapper']): + resp.write_file(respiter) + else: + for item in respiter: + resp.write(item) resp.close() request_time = datetime.now() - request_start self.log.access(resp, req, environ, request_time)