File tree Expand file tree Collapse file tree 1 file changed +10
-1
lines changed Expand file tree Collapse file tree 1 file changed +10
-1
lines changed Original file line number Diff line number Diff line change 1717
1818from eventlet import hubs , greenthread
1919from eventlet .greenio import GreenSocket
20- from eventlet .wsgi import ALREADY_HANDLED as EVENTLET_ALREADY_HANDLED
20+ import eventlet .wsgi
2121import greenlet
2222
2323from gunicorn .workers .base_async import AsyncWorker
2424
25+ # ALREADY_HANDLED is removed in 0.30.3+ now it's `WSGI_LOCAL.already_handled: bool`
26+ # https://github.com/eventlet/eventlet/pull/544
27+ EVENTLET_WSGI_LOCAL = getattr (eventlet .wsgi , "WSGI_LOCAL" , None )
28+ EVENTLET_ALREADY_HANDLED = getattr (eventlet .wsgi , "ALREADY_HANDLED" , None )
29+
2530
2631def _eventlet_socket_sendfile (self , file , offset = 0 , count = None ):
2732 # Based on the implementation in gevent which in turn is slightly
@@ -125,6 +130,10 @@ def patch(self):
125130 patch_sendfile ()
126131
127132 def is_already_handled (self , respiter ):
133+ # eventlet >= 0.30.3
134+ if getattr (EVENTLET_WSGI_LOCAL , "already_handled" , None ):
135+ raise StopIteration ()
136+ # eventlet < 0.30.3
128137 if respiter == EVENTLET_ALREADY_HANDLED :
129138 raise StopIteration ()
130139 return super ().is_already_handled (respiter )
You can’t perform that action at this time.
0 commit comments