Only defer the lock if we're pre-emptively rate limiting.

If a 429 was already hit somehow then we're no longer pre-emptively
rate limiting and we're going to end up having a race condition in
the lock/unlock cycle.
This commit is contained in:
Rapptz 2017-02-08 03:47:35 -05:00
parent f8d19ae7ba
commit f5b455c119

View File

@ -154,7 +154,7 @@ class HTTPClient:
# check if we have rate limit header information
remaining = r.headers.get('X-Ratelimit-Remaining')
if remaining == '0':
if remaining == '0' and r.status != 429:
# we've depleted our current bucket
if header_bypass_delay is None:
now = parsedate_to_datetime(r.headers['Date'])