Fix NRE when ratelimmited requests don't return a body (#2135)

This commit is contained in:
CottageDwellingCat
2022-03-02 13:03:10 -06:00
committed by GitHub
parent 553055b724
commit b95b94231c

View File

@@ -377,7 +377,8 @@ namespace Discord.Net.Queue
// use the payload reset after value // use the payload reset after value
var payload = info.ReadRatelimitPayload(body); var payload = info.ReadRatelimitPayload(body);
resetTick = DateTimeOffset.UtcNow.Add(TimeSpan.FromSeconds(payload.RetryAfter)); // fallback on stored ratelimit info when payload is null, https://github.com/discord-net/Discord.Net/issues/2123
resetTick = DateTimeOffset.UtcNow.Add(TimeSpan.FromSeconds(payload?.RetryAfter ?? info.ResetAfter?.TotalSeconds ?? 0));
#if DEBUG_LIMITS #if DEBUG_LIMITS
Debug.WriteLine($"[{id}] Reset-After: {info.ResetAfter.Value} ({info.ResetAfter?.TotalMilliseconds} ms)"); Debug.WriteLine($"[{id}] Reset-After: {info.ResetAfter.Value} ({info.ResetAfter?.TotalMilliseconds} ms)");
#endif #endif