mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-06 15:58:39 +09:00
Issue #2402 - Workers.setTimeout/setInterval must handle CSP rejections. https://bugzilla.mozilla.org/show_bug.cgi?id=1490165 Has some namespace issues adding the files, so differs slightly.
This commit is contained in:
parent
0e0ec8cb20
commit
e74612e23e
10 changed files with 270 additions and 65 deletions
|
|
@ -58,7 +58,8 @@ NS_CreateJSTimeoutHandler(JSContext* aCx,
|
|||
extern already_AddRefed<nsIScriptTimeoutHandler>
|
||||
NS_CreateJSTimeoutHandler(JSContext* aCx,
|
||||
mozilla::dom::workers::WorkerPrivate* aWorkerPrivate,
|
||||
const nsAString& aExpression);
|
||||
const nsAString& aExpression,
|
||||
mozilla::ErrorResult& aRv);
|
||||
|
||||
using namespace mozilla;
|
||||
using namespace mozilla::dom;
|
||||
|
|
@ -268,7 +269,7 @@ WorkerGlobalScope::SetTimeout(JSContext* aCx,
|
|||
|
||||
nsCOMPtr<nsIScriptTimeoutHandler> handler =
|
||||
NS_CreateJSTimeoutHandler(aCx, mWorkerPrivate, aHandler, aArguments, aRv);
|
||||
if (NS_WARN_IF(aRv.Failed())) {
|
||||
if (!handler) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
@ -285,7 +286,11 @@ WorkerGlobalScope::SetTimeout(JSContext* aCx,
|
|||
mWorkerPrivate->AssertIsOnWorkerThread();
|
||||
|
||||
nsCOMPtr<nsIScriptTimeoutHandler> handler =
|
||||
NS_CreateJSTimeoutHandler(aCx, mWorkerPrivate, aHandler);
|
||||
NS_CreateJSTimeoutHandler(aCx, mWorkerPrivate, aHandler, aRv);
|
||||
if (!handler) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
return mWorkerPrivate->SetTimeout(aCx, handler, aTimeout, false, aRv);
|
||||
}
|
||||
|
||||
|
|
@ -326,7 +331,10 @@ WorkerGlobalScope::SetInterval(JSContext* aCx,
|
|||
Sequence<JS::Value> dummy;
|
||||
|
||||
nsCOMPtr<nsIScriptTimeoutHandler> handler =
|
||||
NS_CreateJSTimeoutHandler(aCx, mWorkerPrivate, aHandler);
|
||||
NS_CreateJSTimeoutHandler(aCx, mWorkerPrivate, aHandler, aRv);
|
||||
if (NS_WARN_IF(aRv.Failed())) {
|
||||
return 0;
|
||||
}
|
||||
return mWorkerPrivate->SetTimeout(aCx, handler, aTimeout, true, aRv);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue