diff --git a/fetch.bs b/fetch.bs index e6242f61c..e8a2d201e 100644 --- a/fetch.bs +++ b/fetch.bs @@ -7542,8 +7542,8 @@ object), initially null.

To create a {{Request}} object, given a -request request, headers guard guard, and -realm realm, run these steps: +request request, headers guard guard, +{{AbortSignal}} object signal, and realm realm:

  1. Let requestObject be a new {{Request}} object with realm. @@ -7554,8 +7554,7 @@ object), initially null. object with realm, whose headers list is request's headers list and guard is guard. -

  2. Set requestObject's signal to a new - {{AbortSignal}} object with realm. +

  3. Set requestObject's signal to signal.

  4. Return requestObject.

@@ -7826,11 +7825,12 @@ constructor steps are:
  • Set this's request to request. -

  • Set this's signal to a new {{AbortSignal}} object - with this's relevant realm. +

  • Let signals be « signal » if signal is non-null; otherwise + « ». -

  • If signal is non-null, then make this's signal - follow signal. +

  • Set this's signal to the result of + creating a dependent abort signal from signals, using {{AbortSignal}} and + this's relevant realm.

  • Set this's headers to a new {{Headers}} object with this's relevant realm, whose header list is request's @@ -8015,12 +8015,15 @@ set; otherwise false.

  • Let clonedRequest be the result of cloning this's request. -

  • Let clonedRequestObject be the result of creating a - {{Request}} object, given clonedRequest, this's - headers's guard, and this's relevant realm. +

  • Assert: this's signal is non-null. -

  • Make clonedRequestObject's signal - follow this's signal. +

  • Let clonedSignal be the result of creating a dependent abort signal from + « this's signal », using {{AbortSignal}} and this's + relevant realm. + +

  • Let clonedRequestObject be the result of creating a + {{Request}} object, given clonedRequest, this's headers's + guard, clonedSignal and this's relevant realm.

  • Return clonedRequestObject.