Commit graph

359 commits

Author SHA1 Message Date
Tim Huang
a5970dd816 Bug 1968644 - Part 3: Populate the triggeringFirstPartyClassificationFlags and triggeringThirdPartyClassificationFlags for fetch requests. r=valentin,smaug
Differential Revision: https://phabricator.services.mozilla.com/D252444
2025-06-17 20:28:15 +00:00
agoloman
424b96cdfb Revert "Bug 1968644 - Part 10: Store JSCallingLocation and set the JSCallingLocation fallback for Media loads. r=emilio" for causing valgrid failures.
This reverts commit efd9a5ba48fc380ea38ca827657e6f3fc1a865b5.

Revert "Bug 1968644 - Part 9: Add more tests for loads triggered by tracking scripts. r=valentin,anti-tracking-reviewers,emz"

This reverts commit 7d5c3e1c1ce9e5e41f3054ba7245dda936d14787.

Revert "Bug 1968644 - Part 8: Populate the triggeringFirstPartyClassificationFlags and triggeringThirdPartyClassificationFlags for WebSocket requests. r=valentin,necko-reviewers"

This reverts commit 53a783a51e5e2db3f695150bc85b7af2a34b78a3.

Revert "Bug 1968644 - Part 7: Add tests. r=necko-reviewers,anti-tracking-reviewers,emz,valentin"

This reverts commit e52f034955e34d4c6ad841278894974c615a123f.

Revert "Bug 1968644 - Part 6: Populate triggeringFirstPartyClassificationFlags and triggeringThirdPartyClassificationFlags during channel creation. r=necko-reviewers,kershaw"

This reverts commit f564c21b371c60b240c79a8b56906a9175d58ec3.

Revert "Bug 1968644 - Part 5: Populate triggeringFirstPartyClassificationFlags and triggeringThirdPartyClassificationFlags for CSS loads. r=emilio"

This reverts commit 8a8fd7bacc029c91337718e31f7f5911c5afd9a8.

Revert "Bug 1968644 - Part 4: Populate triggeringFirstPartyClassificationFlags and triggeringThirdPartyClassificationFlags for loads. r=smaug,necko-reviewers"

This reverts commit 7b3ba3b6689a802718fef2023f9691400611c285.

Revert "Bug 1968644 - Part 3: Populate the triggeringFirstPartyClassificationFlags and triggeringThirdPartyClassificationFlags for fetch requests. r=valentin,smaug"

This reverts commit 08f090244fbab71a14c5e30f740ffcb9cb6f3d31.

Revert "Bug 1968644 - Part 2: Intorduce the ClassificationFlags to nsIClassifiedChannel.idl. r=dimi,necko-reviewers,valentin"

This reverts commit b8c01cd77c4e180b5983dd6a7515b7438676a897.

Revert "Bug 1968644 - Part 1: Introduce triggeringFirstPartyClassificationFlags and triggeringThirdPartyClassificationFlags to LoadInfo. r=necko-reviewers,kershaw"

This reverts commit a7619a72b4c02e1ff2fa11ce70c954e3313058e1.
2025-06-17 14:27:29 +00:00
Tim Huang
c9b192ec33 Bug 1968644 - Part 3: Populate the triggeringFirstPartyClassificationFlags and triggeringThirdPartyClassificationFlags for fetch requests. r=valentin,smaug
Differential Revision: https://phabricator.services.mozilla.com/D252444
2025-06-17 09:24:39 +00:00
Sean Feng
76d835cbc9 Bug 1964407 - Implement TaskSignal.any for the web task scheduling API r=jjaschke,dom-core,webidl,smaug
Spec: https://wicg.github.io/scheduling-apis/#dom-tasksignal-any

Differential Revision: https://phabricator.services.mozilla.com/D248346
2025-05-15 15:14:14 +00:00
Florian Quèze
258754e5c1 Bug 1879329 - script generated replacement of the GleanMetrics.h includes, r=chutten,valentin,media-playback-reviewers,cookie-reviewers,anti-tracking-reviewers,profiler-reviewers,win-reviewers,rkraesig,emz,aabh,padenot.
Differential Revision: https://phabricator.services.mozilla.com/D234744
2025-01-21 11:21:45 +00:00
Tim Huang
e578d15f91 Bug 1915355 - Part 2: Propagate the isOn3PCBExcpetionList to workers. r=edenchuang
We need to propagate the isOn3PCBExceptionList flag from the nsILoadInfo
to workers so that the requests from workers can have the flag to exempt
third-party cookie blocking. We will also tackle the fetch request in
the worker scope in the patch.

Depends on D223380

Differential Revision: https://phabricator.services.mozilla.com/D223936
2025-01-10 08:24:28 +00:00
Stanca Serban
53a578d2b0 Backed out 8 changesets (bug 1915355) for causing xpcshell failures.
Backed out changeset d292c3a2592d (bug 1915355)
Backed out changeset 3386ee00459e (bug 1915355)
Backed out changeset 98848e63dfbf (bug 1915355)
Backed out changeset b668d0c685e8 (bug 1915355)
Backed out changeset 08acd8256071 (bug 1915355)
Backed out changeset 3ae9463ee988 (bug 1915355)
Backed out changeset 2dd416f1b847 (bug 1915355)
Backed out changeset 17107bbcf8c8 (bug 1915355)
2025-01-08 23:36:08 +02:00
Tim Huang
9b16feb9d9 Bug 1915355 - Part 2: Propagate the isOn3PCBExcpetionList to workers. r=edenchuang
We need to propagate the isOn3PCBExceptionList flag from the nsILoadInfo
to workers so that the requests from workers can have the flag to exempt
third-party cookie blocking. We will also tackle the fetch request in
the worker scope in the patch.

Depends on D223380

Differential Revision: https://phabricator.services.mozilla.com/D223936
2025-01-08 19:25:58 +00:00
smayya
4bdbca04b0 Bug 1935088 - set thirdparty contexts for fetch keepalive requests. r=timhuang
Differential Revision: https://phabricator.services.mozilla.com/D231754
2025-01-07 14:41:55 +00:00
Alexandru Marc
b0d0e38665 Backed out 7 changesets (bug 1915355) for causing performance regressions CLOSED TREE
Backed out changeset 77b4cc920fe4 (bug 1915355)
Backed out changeset da9446e06954 (bug 1915355)
Backed out changeset 20708fe16d2a (bug 1915355)
Backed out changeset 7c4b003d1e48 (bug 1915355)
Backed out changeset 36163490219b (bug 1915355)
Backed out changeset 8f867025b79b (bug 1915355)
Backed out changeset 3d647f81adb9 (bug 1915355)
2024-12-30 13:02:45 +02:00
Alexandru Marc
23411e1fbb Backed out changeset 5efbaa9e5c01 (bug 1935088) for causing conflicts 2024-12-30 12:57:53 +02:00
smayya
da3c166415 Bug 1935088 - set thirdparty contexts for fetch keepalive requests. r=timhuang
Differential Revision: https://phabricator.services.mozilla.com/D231754
2024-12-20 11:36:24 +00:00
Tim Huang
986bba3ade Bug 1915355 - Part 2: Propagate the isOn3PCBExcpetionList to workers. r=edenchuang
We need to propagate the isOn3PCBExceptionList flag from the nsILoadInfo
to workers so that the requests from workers can have the flag to exempt
third-party cookie blocking. We will also tackle the fetch request in
the worker scope in the patch.

Differential Revision: https://phabricator.services.mozilla.com/D223936
2024-12-17 21:44:36 +00:00
Alexandru Marc
83554c99b0 Backed out 7 changesets (bug 1915355) for causing build bustages @ ThirdPartyCookieBlockingExceptions.cpp CLOSED TREE
Backed out changeset 5e5278038a79 (bug 1915355)
Backed out changeset d2381f88168a (bug 1915355)
Backed out changeset 675785853d7a (bug 1915355)
Backed out changeset de6a26d3e3df (bug 1915355)
Backed out changeset b2934cae3c23 (bug 1915355)
Backed out changeset e7077b00cfc1 (bug 1915355)
Backed out changeset c5d7f4e7e839 (bug 1915355)
2024-12-17 12:39:21 +02:00
Tim Huang
5c5b21a53e Bug 1915355 - Part 2: Propagate the isOn3PCBExcpetionList to workers. r=edenchuang
We need to propagate the isOn3PCBExceptionList flag from the nsILoadInfo
to workers so that the requests from workers can have the flag to exempt
third-party cookie blocking. We will also tackle the fetch request in
the worker scope in the patch.

Differential Revision: https://phabricator.services.mozilla.com/D223936
2024-12-17 08:57:30 +00:00
smayya
f1436e6551 Bug 1914632 - support fetch keepalive for workers. r=edenchuang
Differential Revision: https://phabricator.services.mozilla.com/D220018
2024-09-24 17:10:05 +00:00
Butkovits Atila
afadfbae6f Backed out 5 changesets (bug 1906952, bug 1914632, bug 1901761) for causing bustage at RefPtr.h. CLOSED TREE
Backed out changeset 4dadc74e5e51 (bug 1906952)
Backed out changeset 0689a41fae4c (bug 1914632)
Backed out changeset 1f93aaf15cf6 (bug 1914632)
Backed out changeset 37dbae4a6310 (bug 1914632)
Backed out changeset 177540310817 (bug 1901761)
2024-09-24 17:21:15 +03:00
smayya
c762a84e5c Bug 1914632 - support fetch keepalive for workers. r=edenchuang
Differential Revision: https://phabricator.services.mozilla.com/D220018
2024-09-24 11:30:21 +00:00
smayya
79dd4d2e30 Bug 1873551 - Add telemetry probes for fetch keepalive. r=necko-reviewers,jesup
Differential Revision: https://phabricator.services.mozilla.com/D218923
2024-08-14 09:51:36 +00:00
smayya
380c1efb91 Bug 1871378 - update Fetch algorithm to restrict Fetch body Size for keepalive request. r=necko-reviewers,edenchuang,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D214245
2024-07-04 12:24:46 +00:00
Tom Schuster
6613ec7689 Bug 1904004 - Use OriginAttributes::IsPrivateBrowsing instead of open coding PBM checks. r=timhuang,cookie-reviewers,anti-tracking-reviewers,profiler-reviewers,necko-reviewers,kershaw,dom-storage-reviewers,janv,canaltinova,dom-worker-reviewers,asuth
Differential Revision: https://phabricator.services.mozilla.com/D214532
2024-06-24 11:06:18 +00:00
sunil mayya
46fd85c2da Bug 1871376 - route keepalive request through PFetchChild. r=edenchuang,necko-reviewers,jesup
Differential Revision: https://phabricator.services.mozilla.com/D205720
2024-06-13 06:27:18 +00:00
Iulian Moraru
5f9b5ecd93 Backed out 3 changesets (bug 1871377, bug 1871376) for causing multiple failures on FetchChild.cpp.
Backed out changeset f40672b20c47 (bug 1871377)
Backed out changeset 39c159dbb3c6 (bug 1871376)
Backed out changeset a1120bbddda2 (bug 1871376)
2024-06-12 07:25:56 +03:00
sunil mayya
0aacf135d3 Bug 1871376 - route keepalive request through PFetchChild. r=edenchuang,necko-reviewers,jesup
Differential Revision: https://phabricator.services.mozilla.com/D205720
2024-06-11 17:44:20 +00:00
Tamas Szentpeteri
41bd2a4380 Backed out 2 changesets (bug 1871376, bug 1871377) for causing bp-nu bustages related to RefPtr.h. CLOSED TREE.
Backed out changeset b2f28e905212 (bug 1871377)
Backed out changeset 46f26b4f249d (bug 1871376)
2024-06-11 01:00:02 +03:00
sunil mayya
c719e442ca Bug 1871376 - route keepalive request through PFetchChild. r=edenchuang,necko-reviewers,jesup
Differential Revision: https://phabricator.services.mozilla.com/D205720
2024-06-10 19:21:06 +00:00
Tim Huang
d7c54fb41e Bug 1873631 - Part 2: Set the isInThirdPartyContext bit to the loadInfo of the channel for the fetch reqeust in workers. r=bvandersloot,asuth
We propergate the isInThirdPartyContext bit from the workerPrivate to
the fetchDrvier. So, we can set the bit for the channel that loads the
fetch request for workers.

Differential Revision: https://phabricator.services.mozilla.com/D207139
2024-04-22 16:02:51 +00:00
Eden Chuang
2f65cf28ae Bug 1769913 - P3 Remove WorkerRunnable::mWorkerPrivate. r=dom-worker-reviewers,asuth
WorkerRunnable no longer keeps a raw pointer(mWorkerPrivate) for the associated WorkerPrivate in this patch.
Removing the WorkerRunnable::mWorkerPrivate needs to fix the following problems.

1. Thread assertions in WorkerRunnable::Dispatch()

To fix this problem, the associated WorkerPrivate is as a parameter and passed to WorkerRunnable::Dispatch() for the dispatching thread assertions. This associated WorkerPrivate is also propagated to PreDispatch() and PostDispatch() for the children classes of WorkerRunnable()

2. Get the associated WorkerPrivate in WorkerRunnable::Run() for environment setup(GlobabObject, JSContext setting for the runnable)

- For WorkerThreadRunnable

Since WorkerThreadRunnable is supposed to run on the worker thread, it does not need to keep a raw pointer to WorkerPrivate as its class member. GetCurrentThreadWorkerPrivate() should always get the correct WorkerPrivate for WorkerThreadRunnable.

- For WorkerParentThreadRunnable

WorkerParentRef is introduced to keep a RefPtr<WorkerPrivate> for WorkerParentThreadRunnable instead of using a raw pointer.
Checking the associated WorkerPrivate existence by WorkerParentRef at the beginning of WorkerParentThreadRunnable::Run(). If the Worker has already shut down, WorkerParentThreadRunnable cannot do anything with the associated WorkerPrivate, so WorkerParentThreadRunnable::Run() will return NS_OK directly but with a warning.

The associated WorkerPrivate is also passed into WorkerRun(), PreRun(), and PostRun(), so the majority of implementations of child classes of WorkerRunnable do not need to be changed.

If there are any cases in which the child classes of WorkerThreadRunnable/WorkerParentThreadRunnable want to keep the associated WorkerPrivate, they should use WorkerRefs instead of raw pointers.

Depends on D205679

Differential Revision: https://phabricator.services.mozilla.com/D207039
2024-04-19 09:41:58 +00:00
Emilio Cobos Álvarez
e4ddf24147 Bug 1887719 - More consistently use UTF8String/nsCString for URLs. r=necko-reviewers,webidl,anti-tracking-reviewers,places-reviewers,jari,kershaw,janv,smaug,hsivonen
Sorry for the massive patch but I found it hard to split without
introducing a bunch of copies around...

This mostly makes necko and DOM agree on which strings to use, which
should result on less copies and conversions.

Differential Revision: https://phabricator.services.mozilla.com/D205601
2024-04-04 11:49:57 +00:00
Jens Stutte
a4a855b0e3 Bug 1880233 - Add names to MainThreadWorkerRunnable derived runnables. r=dom-worker-reviewers,asuth
Differential Revision: https://phabricator.services.mozilla.com/D201812
2024-02-14 16:13:24 +00:00
Eden Chuang
5c699915b9 Bug 1873573 - Rename PromiseWorkerProxy::WorkerPromise() to GetWorkerPromise(). r=dom-worker-reviewers,smaug
Differential Revision: https://phabricator.services.mozilla.com/D199323
2024-01-26 10:48:56 +00:00
Kagami Sascha Rosylight
2f3b882374 Bug 1865728 - Reverse the check order in Fetch::SetBodyUsed r=smaug
nsIInputStream can exist and then may later go away when the stream becomes unreadable (closed/errored). Since FetchStreamReader is created only when nsIInputStream initially did not exist, the current assertion may fail.

This patch now goes LockStream way if FetchStreamReader doesn't exist, regardless of whether nsIInputStream exists or not.

Differential Revision: https://phabricator.services.mozilla.com/D194413
2023-12-01 12:37:03 +00:00
Emilio Cobos Álvarez
25c0d10932 Bug 1624819 - Remove TaskCategory and other quantum dom remnants. r=smaug,media-playback-reviewers,credential-management-reviewers,cookie-reviewers,places-reviewers,win-reviewers,valentin,mhowell,sgalich,alwu
Sorry this is not a particularly easy patch to review. But it should be
mostly straight-forward.

I kept Document::Dispatch mostly for convenience, but could be
cleaned-up too / changed by SchedulerGroup::Dispatch. Similarly maybe
that can just be NS_DispatchToMainThread if we add an NS_IsMainThread
check there or something (to preserve shutdown semantics).

Differential Revision: https://phabricator.services.mozilla.com/D190450
2023-10-10 08:51:12 +00:00
Eden Chuang
ec09980910 Bug 1837736 - Don't execute WorkerFetchResponseRunnable::WorkerRun when Worker is shutting down r=asuth
This is a case that Worker is shutting down when WorkerFetchResponseRunnable is in queue.

When Worker is getting into "Canceling" all WorkerRefs are notified, then queued WorkerRunnable are executed.
And this causes PromiseWorkerProxy::mWorkerRef be released before the WorkerRunnable execution.
Before Fx 116, there is no this problem since the queued WorkerFetchResponseRunnable is canceled by WorkerPrivate::ClearMainEventQueue() mechanism.

However, WorkerFetchResponseRunnable needs WorkerRef to keep Worker alive for its WorkerRun execution.

Here we just check if WorkerFetchResolver::mWorkerRef is notified or not to judge if the Worker is in "Canceling." Once the Worker is in "Canceling," return true in WorkerFetchResponseRunnable::WorkerRun directly.

We might need a mechanism for PromiseWorkerProxy to notify the proxy owner worker is shutting down for proxy owner has a way to release resources.

Differential Revision: https://phabricator.services.mozilla.com/D183859
2023-07-19 08:09:11 +00:00
Kagami Sascha Rosylight
91db9f6865 Bug 1811882 - Part 4: Use NonAsyncInputToReadableStreamAlgorithms for FetchBody::GetBody() r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D179075
2023-06-06 13:07:46 +00:00
Kagami Sascha Rosylight
794038639b Bug 1811882 - Part 2: Implement ReadableStream::MaybeGetInputStreamIfUnread r=smaug
All existing GetBodyStreamHolder call is consciously done on unread streams, either to simply detect nsIInputStream-based streams or to get the internal nsIInputStream. The function can directly return nsIInputStream to fulfill the existing purposes.

Differential Revision: https://phabricator.services.mozilla.com/D178359
2023-06-06 13:07:46 +00:00
Eden Chuang
f4a08bbee6 Bug 1800659 - P2 remove nsICancelableRunnable inheriting form WorkerRunnable. r=asuth
This patch is only remove the inheriting, but keeping Cancel() implmentation.
The Cancel() is needed in some special cases, such as Worker enters Canceling when WorkerScope is not created.

Depends on D176915

Differential Revision: https://phabricator.services.mozilla.com/D173850
2023-06-06 06:36:50 +00:00
Kagami Sascha Rosylight
b758499f7e Bug 1832326 - Part 2: Remove FetchBody::mReadableStreamReader r=smaug
FetchBody does nothing with the strong reference. Both ReadableStream and FetchStreamReader have their strong references and corresponding cycle collection, so this one can go away.

Depends on D177904

Differential Revision: https://phabricator.services.mozilla.com/D178098
2023-05-16 00:08:01 +00:00
Kagami Sascha Rosylight
3803445d91 Bug 1832333 - Remove unused ErrorResult in GetBodyUsed r=smaug
It was added by bug 1385890 (D8450) to properly interact with JS ReadableStream and is not needed anymore.

Differential Revision: https://phabricator.services.mozilla.com/D177635
2023-05-10 20:11:13 +00:00
Eden Chuang
bf3fa5100a Bug 1819570 - P4 Propagte stack trace notification back to the content process for PFetch. r=asuth
After PFetch is enabled, fetch() call in workers will not create a channel in the content process anymore.
Although netmonitor watches channels and NetEvents, stack traces are only caught in the content process.
That means PFetch should notify the netmonitor about the stack trace of the fetch at the proper moment.

In original fetch steps, FetchDriver would notify the netmonitor the fetch stack trace at
https://searchfox.org/mozilla-central/rev/cdddec7fd690700efa4d6b48532cf70155e0386b/dom/fetch/FetchDriver.cpp#834

When PFetch is enabled, PFetch needs also to propagate this notification back to the content process.

Depends on D174442

Differential Revision: https://phabricator.services.mozilla.com/D174443
2023-05-05 15:24:10 +00:00
Eden Chuang
f6ba398065 Bug 1819570 - P1 Propagate worker's assocaited BrowsingContextID through PFetch to the parent process. r=asuth
After PFetch is enabled, fetch() call in workers will not create a channel in the content process anymore.
Although netmonitor also watches the channels in the parent process, the created channel still loses the BrowsingContext information for netmonitor to connect the network event and the channel.

This patch is the first part to propagte the worker's associated BrowsingContextID to the parent process through PFetch.

Differential Revision: https://phabricator.services.mozilla.com/D174249
2023-05-05 15:24:09 +00:00
Iulian Moraru
021d7987c7 Backed out 5 changesets (bug 1819570) for causing dt failures on browser_net_worker_stacks.js. CLOSED TREE
Backed out changeset e73379145f9a (bug 1819570)
Backed out changeset addc41903c2f (bug 1819570)
Backed out changeset c8534cf58f86 (bug 1819570)
Backed out changeset 81e926cf92dc (bug 1819570)
Backed out changeset 7d73ec5415a4 (bug 1819570)
2023-05-04 07:19:13 +03:00
Eden Chuang
c871ac466f Bug 1819570 - P4 Propagte stack trace notification back to the content process for PFetch. r=asuth
After PFetch is enabled, fetch() call in workers will not create a channel in the content process anymore.
Although netmonitor watches channels and NetEvents, stack traces are only caught in the content process.
That means PFetch should notify the netmonitor about the stack trace of the fetch at the proper moment.

In original fetch steps, FetchDriver would notify the netmonitor the fetch stack trace at
https://searchfox.org/mozilla-central/rev/cdddec7fd690700efa4d6b48532cf70155e0386b/dom/fetch/FetchDriver.cpp#834

When PFetch is enabled, PFetch needs also to propagate this notification back to the content process.

Depends on D174442

Differential Revision: https://phabricator.services.mozilla.com/D174443
2023-05-04 02:46:31 +00:00
Eden Chuang
382c6e8162 Bug 1819570 - P1 Propagate worker's assocaited BrowsingContextID through PFetch to the parent process. r=asuth
After PFetch is enabled, fetch() call in workers will not create a channel in the content process anymore.
Although netmonitor also watches the channels in the parent process, the created channel still loses the BrowsingContext information for netmonitor to connect the network event and the channel.

This patch is the first part to propagte the worker's associated BrowsingContextID to the parent process through PFetch.

Differential Revision: https://phabricator.services.mozilla.com/D174249
2023-05-04 02:46:31 +00:00
Kagami Sascha Rosylight
5bcfb4442b Bug 1815431 - Remove BlobBodyStreamHolder r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D169069
2023-02-09 07:01:10 +00:00
Kagami Sascha Rosylight
a3c29544be Bug 1810759 - Replace ReadableStream internal algorithm uses in Fetch r=evilpie
Differential Revision: https://phabricator.services.mozilla.com/D167370
2023-01-24 14:52:03 +00:00
Eden Chuang
14ff5b1650 Bug 1351231 - Integrate FetchChild into Fetch.cpp r=dom-worker-reviewers,jesup
Depends on D142437

Differential Revision: https://phabricator.services.mozilla.com/D142704
2023-01-20 09:09:18 +00:00
Noemi Erli
2a016fbd8d Backed out 5 changesets (bug 1351231) for causing multiple wpt failures CLOSED TREE
Backed out changeset 257553919696 (bug 1351231)
Backed out changeset 4fd92351d64b (bug 1351231)
Backed out changeset 7a4e3f5f674a (bug 1351231)
Backed out changeset 9da00c1364a5 (bug 1351231)
Backed out changeset 19b78046ffef (bug 1351231)
2023-01-18 18:16:01 +02:00
Eden Chuang
473cb0ffa2 Bug 1351231 - Integrate FetchChild into Fetch.cpp r=dom-worker-reviewers,jesup
Depends on D142437

Differential Revision: https://phabricator.services.mozilla.com/D142704
2023-01-18 00:50:20 +00:00
Marian-Vasile Laza
1037940f5b Backed out 5 changesets (bug 1351231) for causing multiple wpt failures. CLOSED TREE
Backed out changeset a41252141399 (bug 1351231)
Backed out changeset 6cbb442f4772 (bug 1351231)
Backed out changeset dbdca4661a35 (bug 1351231)
Backed out changeset ea27cd66fefd (bug 1351231)
Backed out changeset 8c21c9468949 (bug 1351231)
2023-01-17 19:53:09 +02:00