summaryrefslogtreecommitdiffstats
path: root/dom
diff options
context:
space:
mode:
authorMoonchild <moonchild@palemoon.org>2020-07-25 17:31:58 +0000
committerMoonchild <moonchild@palemoon.org>2020-07-25 17:31:58 +0000
commitf0ef003f36904d81ea5762c8879496bc355ac5b0 (patch)
tree71aa3b3dfefb9bc78caf8267856ade7dcb5420af /dom
parent84cb854842cb4aecc2a3bee93c7a2698715643c8 (diff)
downloadUXP-f0ef003f36904d81ea5762c8879496bc355ac5b0.tar
UXP-f0ef003f36904d81ea5762c8879496bc355ac5b0.tar.gz
UXP-f0ef003f36904d81ea5762c8879496bc355ac5b0.tar.lz
UXP-f0ef003f36904d81ea5762c8879496bc355ac5b0.tar.xz
UXP-f0ef003f36904d81ea5762c8879496bc355ac5b0.zip
Issue #1587 Part 12 (followup 2): Allow clearing of signal by setting to null.
Diffstat (limited to 'dom')
-rw-r--r--dom/fetch/FetchDriver.cpp5
-rw-r--r--dom/fetch/Request.cpp2
-rw-r--r--dom/webidl/Request.webidl2
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;