Issue #1587 - Part 9: Immediately reject an already-aborted signal

This commit is contained in:
Moonchild 2020-06-12 01:46:48 +00:00 • committed by Roy Tam
commit 3d396386dc

View file

@ -332,7 +332,12 @@ FetchRequest(nsIGlobalObject* aGlobal, const RequestOrUSVString& aInput,
RefPtr<AbortSignal> signal; RefPtr<AbortSignal> signal;
if (aInit.mSignal.WasPassed()) { if (aInit.mSignal.WasPassed()) {
signal = &aInit.mSignal.Value(); signal = &aInit.mSignal.Value();
// Let's FetchDriver to deal with an already aborted signal. }
if (signal && signal->Aborted()) {
// An already aborted signal should reject immediately.
aRv.Throw(NS_ERROR_DOM_ABORT_ERR);
return nullptr;
} }
RefPtr<FetchObserver> observer; RefPtr<FetchObserver> observer;