diff options
author | Moonchild <moonchild@palemoon.org> | 2020-07-25 17:31:58 +0000 |
---|---|---|
committer | Moonchild <moonchild@palemoon.org> | 2020-07-28 10:38:16 +0000 |
commit | ad5e9449d2ec885ce547ed44ac3be066de803784 (patch) | |
tree | 92e8e036fb6d47ef838d27c658b3f49c47ab0cf2 | |
parent | 71848c23a4d09bbb7eff1b27d2cb28904e35240d (diff) | |
download | UXP-ad5e9449d2ec885ce547ed44ac3be066de803784.tar UXP-ad5e9449d2ec885ce547ed44ac3be066de803784.tar.gz UXP-ad5e9449d2ec885ce547ed44ac3be066de803784.tar.lz UXP-ad5e9449d2ec885ce547ed44ac3be066de803784.tar.xz UXP-ad5e9449d2ec885ce547ed44ac3be066de803784.zip |
Issue #1587 Part 12 (followup 2): Allow clearing of signal by setting to null.
-rw-r--r-- | dom/fetch/FetchDriver.cpp | 5 | ||||
-rw-r--r-- | dom/fetch/Request.cpp | 2 | ||||
-rw-r--r-- | dom/webidl/Request.webidl | 2 |
3 files changed, 7 insertions, 2 deletions
diff --git a/dom/fetch/FetchDriver.cpp b/dom/fetch/FetchDriver.cpp index 067e32db4..fd1e99a2b 100644 --- a/dom/fetch/FetchDriver.cpp +++ b/dom/fetch/FetchDriver.cpp @@ -499,6 +499,11 @@ FetchDriver::OnStartRequest(nsIRequest* aRequest, return rv; } + if (!mChannel) { + MOZ_ASSERT(!mObserver); + return NS_BINDING_ABORTED; + } + // We should only get to the following code once. MOZ_ASSERT(!mPipeOutputStream); MOZ_ASSERT(mObserver); diff --git a/dom/fetch/Request.cpp b/dom/fetch/Request.cpp index ba268d331..76f3ce5c5 100644 --- a/dom/fetch/Request.cpp +++ b/dom/fetch/Request.cpp @@ -425,7 +425,7 @@ Request::Constructor(const GlobalObject& aGlobal, } if (aInit.mSignal.WasPassed()) { - signal = &aInit.mSignal.Value(); + signal = aInit.mSignal.Value(); } if (NS_IsMainThread()) { diff --git a/dom/webidl/Request.webidl b/dom/webidl/Request.webidl index 57bea5db6..9140543e7 100644 --- a/dom/webidl/Request.webidl +++ b/dom/webidl/Request.webidl @@ -53,7 +53,7 @@ dictionary RequestInit { DOMString integrity; [Func="AbortController::IsEnabled"] - AbortSignal signal; + AbortSignal? signal; [Func="FetchObserver::IsEnabled"] ObserverCallback observe; |