mirror of
https://github.com/frappe/gunicorn.git
synced 2026-07-02 18:51:31 +08:00
The _read_exact method was calling unreader.read() without a size parameter, which only reads one chunk at a time. With gevent/gthread workers, this could return incomplete data before the full header arrived. Use unreader.read(size) which has proper retry logic built-in to read the exact number of bytes requested. Fixes #3552