Граф коммитов

1286 Коммитов

Автор SHA1 Сообщение Дата
Bogdan Tara a54ec3073f Backed out 4 changesets (bug 1631405) for multiple mochitest failures CLOSED TREE
Backed out changeset 9963cc0b23cb (bug 1631405)
Backed out changeset 469ac933ed7c (bug 1631405)
Backed out changeset 0c5f55864268 (bug 1631405)
Backed out changeset 20dcbcc2f3b8 (bug 1631405)
2020-05-27 01:30:20 +03:00
Matt Woodrow 240d417eb6 Bug 1631405 - Move nsISecureBrowserUI to be owned by the canonical browsing context instead of docshell. r=nika,ckerschb,Gijs,webcompat-reviewers,twisniewski
This removes all docshell nsISecureBrowserUI and mixed content properties, and moves them into CanonicalBrowsingContext/WindowGlobalParent. It makes the mixed content blocker just compute the state for the current load, and then send the results to the parent process, where we update the security state accordingly.

I think we could in the future remove onSecurityChange entirely, and instead just fire an event to the <browser> element notifying it of changes to the queryable securityUI.

Unfortunately we have a lot of existing code that depends on specific ordering between onSecurityChange and onLocationChange, so I had to hook into the RemoteWebProgress implementation in BrowserParent to mimic the same timings.

Differential Revision: https://phabricator.services.mozilla.com/D75447
2020-05-26 21:17:01 +00:00
Matt Woodrow 5b64e9bae2 Bug 1631405 - Make sure we initialize all fields of WindowGlobalParent in the constructor. r=nika
Previously we only set some fields as part of WindowGlobalInit, but WindowGlobalParent sets itself as the current window global on the CanonicalBrowsingContext.

This exposes a period of time where only part of the document state was set, and this was observable to consumers.

This makes OnNewDocument only run when there is a new Document for the same WindowGlobal.

Differential Revision: https://phabricator.services.mozilla.com/D75446
2020-05-26 21:15:42 +00:00
Jonathan Kew 58d58635f7 Bug 1640119 - Pass shared-memory blocks for the font list as part of SetXPCOMProcessAttributes. r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D76507
2020-05-26 09:30:17 +00:00
Nika Layzell 73d17519e7 Bug 1639367 - Clean up TabContext logic for PBrowser, r=farre
Differential Revision: https://phabricator.services.mozilla.com/D76055
2020-05-21 22:38:44 +00:00
Gijs Kruitbosch 38b061ef45 Bug 1638373 - remove js/ipc now that CPOWs are dead, r=mccr8
Depends on D76597

Differential Revision: https://phabricator.services.mozilla.com/D76598
2020-05-24 18:47:04 +00:00
Emilio Cobos Álvarez a42bfa75a9 Bug 1156934 - Notify all content processes when LookAndFeel changes. r=jesup
This should fix the issue for preallocated processes that still don't
host any document, and also send a few less IPC messages.

Differential Revision: https://phabricator.services.mozilla.com/D76537
2020-05-23 14:28:40 +00:00
Peter Van der Beken 2c8f84716d Bug 1570255 - Forward ChildSHistory::Go to the parent. r=smaug
This enables navigating by index in session history go through the
session history in the parent (if enabled with the pref).

If the pref is enabled, then ChildSHistory::Go will send an IPC message
to the parent with the index to navigate to. The parent calls the
existing nsSHistory implementation and starts the loads, and
asynchronously returns the index that we actually navigated to. The
child process then uses that result to update the session history
implementation in the child process (this part is temporary, while we
have session history both in parent and in child). We also make the
parent send an updated length to the child process over IPC, so that
history.length always the length for the implementation in the parent.

Differential Revision: https://phabricator.services.mozilla.com/D65330
2020-05-20 09:15:31 +00:00
Peter Van der Beken f38cc0e952 Bug 1570255 - Reboot session history in parent part 1. r=smaug,necko-reviewers,valentin
This adds a new implementation of nsISHEntry
(mozilla::dom::SessionHistoryEntry). When session history in the parent
is turned on, we'll instantiate the existing nsSHistory in the parent
process, but it will store entries of this new type. The nsSHistory in
the child process will also be instantiated for now, to avoid breaking
too many assumptions, and we try to keep parent and child
implementations in sync.

mozilla::dom::SessionHistoryEntry stores most of its data in a new
structure (mozilla::dom::SessionHistoryInfo) which can be sent over IPC.
When a load starts through the DocumentChannel we create an entry of
this new type for it in the parent process in
DocumentLoadListener::Open. The SessionHistoryInfo for that entry (with
an associated ID) is then sent over IPC in the RedirectToRealChannelArgs
to the process that does the actual load, where we store it in the
nsDocShell in mLoadingEntry (and mLoadingEntryId). The parent process
keeps track of outstanding loading entries in an array (mLoadingEntries)
in the CanonicalBrowsingContext. When a load finishes the nsDocShell
transfers mLoadingEntry into mActiveEntry, and notifies the parent
process through an IPC message (HistoryCommit) with the id of that
entry. The CanonicalBrowsingContext then removes the entry from the
array and stores it in its mActiveEntry, and adds the entry to the
nsSHistory object.

There are a number of things in this patch that are broken, and a lot of
FIXME comments. However, with the pref turned off things should just be
working as before. The goal is to land this first part, and then iterate
on the new implementation until we can switch over.

Differential Revision: https://phabricator.services.mozilla.com/D65329
2020-05-20 09:09:12 +00:00
Peter Van der Beken 1990918ebe Bug 1570255 - Remove sync session history implementation. r=smaug,nika
Differential Revision: https://phabricator.services.mozilla.com/D65326
2020-05-20 09:09:06 +00:00
Tom Tung d9d34b2983 Bug 1605176 - Send a error message data and cause a message error on the receiver side when the message data contains a shared memory object in BrowsingContext::PostMessageMoz; r=baku,kmag
Differential Revision: https://phabricator.services.mozilla.com/D75035
2020-05-20 08:27:16 +00:00
Csoregi Natalia 517e830522 Backed out 4 changesets (bug 1629866, bug 1570255) for assertion failures on DocumentChannelChild.cpp. CLOSED TREE
Backed out changeset 214e4a11be0d (bug 1570255)
Backed out changeset db066dda1bb8 (bug 1570255)
Backed out changeset d9f75d88613e (bug 1570255)
Backed out changeset fe2d4790b73a (bug 1629866)
2020-05-13 18:30:42 +03:00
Gijs Kruitbosch 228e52aebe Bug 1196151 - use BrowsingContext for external helper app handling of protocols, r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D74434
2020-05-11 13:13:03 +00:00
Peter Van der Beken c46091ad18 Bug 1570255 - Forward ChildSHistory::Go to the parent. r=smaug
This enables navigating by index in session history go through the
session history in the parent (if enabled with the pref).

If the pref is enabled, then ChildSHistory::Go will send an IPC message
to the parent with the index to navigate to. The parent calls the
existing nsSHistory implementation and starts the loads, and
asynchronously returns the index that we actually navigated to. The
child process then uses that result to update the session history
implementation in the child process (this part is temporary, while we
have session history both in parent and in child). We also make the
parent send an updated length to the child process over IPC, so that
history.length always the length for the implementation in the parent.

Differential Revision: https://phabricator.services.mozilla.com/D65330
2020-05-13 13:47:11 +00:00
Peter Van der Beken 879cba492c Bug 1570255 - Reboot session history in parent part 1. r=smaug,necko-reviewers,valentin
This adds a new implementation of nsISHEntry
(mozilla::dom::SessionHistoryEntry). When session history in the parent
is turned on, we'll instantiate the existing nsSHistory in the parent
process, but it will store entries of this new type. The nsSHistory in
the child process will also be instantiated for now, to avoid breaking
too many assumptions, and we try to keep parent and child
implementations in sync.

mozilla::dom::SessionHistoryEntry stores most of its data in a new
structure (mozilla::dom::SessionHistoryInfo) which can be sent over IPC.
When a load starts through the DocumentChannel we create an entry of
this new type for it in the parent process in
DocumentLoadListener::Open. The SessionHistoryInfo for that entry (with
an associated ID) is then sent over IPC in the RedirectToRealChannelArgs
to the process that does the actual load, where we store it in the
nsDocShell in mLoadingEntry (and mLoadingEntryId). The parent process
keeps track of outstanding loading entries in an array (mLoadingEntries)
in the CanonicalBrowsingContext. When a load finishes the nsDocShell
transfers mLoadingEntry into mActiveEntry, and notifies the parent
process through an IPC message (HistoryCommit) with the id of that
entry. The CanonicalBrowsingContext then removes the entry from the
array and stores it in its mActiveEntry, and adds the entry to the
nsSHistory object.

There are a number of things in this patch that are broken, and a lot of
FIXME comments. However, with the pref turned off things should just be
working as before. The goal is to land this first part, and then iterate
on the new implementation until we can switch over.

Differential Revision: https://phabricator.services.mozilla.com/D65329
2020-05-13 13:46:33 +00:00
Peter Van der Beken e2a88c491c Bug 1570255 - Remove sync session history implementation. r=smaug,nika
Differential Revision: https://phabricator.services.mozilla.com/D65326
2020-05-13 14:24:55 +00:00
Nika Layzell 136a1ffa7a Bug 1636279 - Part 1: Streamline WindowContext initialization, r=farre
This should make the flow of how data gets into the initial WindowContext state
more clear, and allows the setting of initial synced WindowContext fields.

Differential Revision: https://phabricator.services.mozilla.com/D74324
2020-05-08 20:44:12 +00:00
Henri Sivonen 45aad1c320 Bug 1617788 - Restore focus in out-of-focus iframe after switching to another app and back even for non-keyboard causes. r=NeilDeakin
Differential Revision: https://phabricator.services.mozilla.com/D67878
2020-05-08 00:20:51 +00:00
David Teller 3da6e17db2 Bug 1580448 - JSProcessActor API;r=nika
This patch introduces the bulk of JSProcessActor{Child, Parent}.

Differential Revision: https://phabricator.services.mozilla.com/D64595
2020-04-30 16:49:50 +00:00
Stefan Hindli e22cd35728 Backed out 9 changesets (bug 1580448) for linux build bustages in /builds/worker/workspace/obj-build/dist/include/mozilla/dom/JSWindowActorChild.h CLOSED TREE
Backed out changeset 6b4db1a501df (bug 1580448)
Backed out changeset 677257a41457 (bug 1580448)
Backed out changeset 6db8de5fc125 (bug 1580448)
Backed out changeset fd7527c86239 (bug 1580448)
Backed out changeset bfbd3330b0a5 (bug 1580448)
Backed out changeset dafa80c63322 (bug 1580448)
Backed out changeset 2a1701831a6a (bug 1580448)
Backed out changeset 9b548bd38671 (bug 1580448)
Backed out changeset 358f764ae48b (bug 1580448)
2020-04-30 10:58:27 +03:00
David Teller 942da6a70f Bug 1580448 - JSProcessActor API;r=nika
This patch introduces the bulk of JSProcessActor{Child, Parent}.

Differential Revision: https://phabricator.services.mozilla.com/D64595
2020-04-30 07:35:17 +00:00
Dimi Lee 56bfd52246 Bug 1612376 - P6. Permission update in the parent process should only happen when the heurisitc is triggered by a first-party window r=timhuang,baku
Differential Revision: https://phabricator.services.mozilla.com/D72657
2020-04-29 14:48:47 +00:00
alwu b368e58a84 Bug 1632301 - part4 : rename 'ControlledMediaState' to 'MediaPlaybackState'. r=bryce
This patch will do :
- rename `ControlledMediaState` to `MediaPlaybackState`
- rename the related functions

The advantage of doing so :
- more consistent with `MediaAudibleState`

Differential Revision: https://phabricator.services.mozilla.com/D72060
2020-04-28 07:14:05 +00:00
alwu d1cbaeb672 Bug 1632301 - part3 : use MediaAudibleState to replace boolean value. r=bryce
This patch will do :
- replace `boolean` with enum class `MediaAudibleState`

The advantage of doing so :
- It's easier to understand what actually meaning of the parameter we set

Differential Revision: https://phabricator.services.mozilla.com/D72058
2020-04-28 07:14:05 +00:00
Steven MacLeod e34761f02e Bug 1597413 - fix locking screen orientation to be fission compatible. r=farre
Both the deprecated `Screen.lockOrientation` and replacement
`ScreenOrientation.lock` APIs have been updated to make use of a new
`OrientationLock` field on the `BrowsingContext`. This replaces the
storage and use of APIs for this on the root docshell.

In the non fission case things should behave the same, as pending
promises for previous calls to `Screen.lockOrientation` will still be
cancelled in process. If there are `BrowsingContext`s in other
processes though, IPC will be sent to the parent, and then each other
child to cancel them. This should be spec compliant as the spec is
already racy with regards to multiple `lockOrientation` calls.

This new implementation has a little extra IPC than the optimal
implementation would since the root `BrowsingContext`s
`OrientationLock` is set using the normal `SyncedContext` machinery,
rather than combining the `AbortOtherOrientationPendingPromises`
message for a single message.

This commit fixes both Bug 1597413 and Bug 1597443.

Differential Revision: https://phabricator.services.mozilla.com/D70416
2020-04-27 15:43:36 +00:00
Andreas Farre 6adf2b375d Bug 1576188 - Handle save-as for cross process iframes. r=peterv
Depends on D70388

Differential Revision: https://phabricator.services.mozilla.com/D70389
2020-04-27 05:41:40 +00:00
Matt Woodrow a34398fd9f Bug 1602318 - Initiate document loads in the parent process in parallel with setting up the content process side. r=nika,jya
Differential Revision: https://phabricator.services.mozilla.com/D72112
2020-04-26 00:54:15 +00:00
Dorel Luca c2d429f9a0 Backed out 2 changesets (bug 1576188) for Build bustage in docshell/base/BrowsingContext.cpp. CLOSED TREE
Backed out changeset 7e5e86986811 (bug 1576188)
Backed out changeset b731cbad59a8 (bug 1576188)
2020-04-24 23:02:11 +03:00
Andreas Farre 55a186014d Bug 1576188 - Handle save-as for cross process iframes. r=peterv
Depends on D70388

Differential Revision: https://phabricator.services.mozilla.com/D70389
2020-04-24 15:47:26 +00:00
Nika Layzell e0f0ac8afa Bug 1580565 - Part 6: Add a unique ID to each BrowsingContextGroup, r=kmag
This allows us to explicitly specify BrowsingContextGroups when synchronizing
them. A major advantage of this is that it means we can handle an attempt to
create a BrowsingContext with a parent which the content process is unaware of,
which is possible due to changes to the EnsureSubscribed logic in earlier
patches in this stack.

This is OK, because in the case where the content process cannot see its parent,
the parent must be imminently discarding.

Differential Revision: https://phabricator.services.mozilla.com/D71668
2020-04-24 18:33:09 +00:00
Nika Layzell cc54537c86 Bug 1580565 - Part 4: Use WindowContext to manage BrowsingContext cached status, r=farre
The existing infrastructure which stored cached BrowsingContexts on the
BrowsingContextGroup was added before WindowContexts were added, and can cause
racing issues with partially discarded trees during process switches.

Differential Revision: https://phabricator.services.mozilla.com/D71238
2020-04-24 18:33:04 +00:00
Cosmin Sabou 0f970fbb19 Backed out 20 changesets (bug 1602318) for causing multiple types of failures. CLOSED TREE
Backed out changeset f71e3eff7a8c (bug 1602318)
Backed out changeset 0e0bdebf223b (bug 1602318)
Backed out changeset 44e82f4339a1 (bug 1602318)
Backed out changeset 5f341ebd8591 (bug 1602318)
Backed out changeset 088ea9d20617 (bug 1602318)
Backed out changeset 5de6321939f2 (bug 1602318)
Backed out changeset f5742e84912b (bug 1602318)
Backed out changeset 13bec3079540 (bug 1602318)
Backed out changeset 6c24ba022911 (bug 1602318)
Backed out changeset 5d0fc0102a7f (bug 1602318)
Backed out changeset fc4efd11e643 (bug 1602318)
Backed out changeset 028bd63e710d (bug 1602318)
Backed out changeset 21ad350f9617 (bug 1602318)
Backed out changeset 8f27319f2c34 (bug 1602318)
Backed out changeset db2832973382 (bug 1602318)
Backed out changeset 1756c7584491 (bug 1602318)
Backed out changeset 983e5a9abe02 (bug 1602318)
Backed out changeset a1b9429b3298 (bug 1602318)
Backed out changeset 7d1c0d968a09 (bug 1602318)
Backed out changeset a3b056ec6be3 (bug 1602318)
2020-04-24 11:15:12 +03:00
Matt Woodrow fc342b8877 Bug 1602318 - Initiate document loads in the parent process in parallel with setting up the content process side. r=nika,jya
Differential Revision: https://phabricator.services.mozilla.com/D72112
2020-04-24 07:00:39 +00:00
Narcis Beleuzu fffdcb0203 Backed out 7 changesets (bug 1580565) for bustages on nsDocShell.cpp . CLOSED TREE
Backed out changeset 8237f9a307f8 (bug 1580565)
Backed out changeset 47f5698d6c72 (bug 1580565)
Backed out changeset e1802670dcc4 (bug 1580565)
Backed out changeset 0a44c410b59b (bug 1580565)
Backed out changeset 20dbcfc9eacc (bug 1580565)
Backed out changeset cdf2b600e779 (bug 1580565)
Backed out changeset a421d33d03ce (bug 1580565)
2020-04-24 05:31:55 +03:00
Nika Layzell 88293ee406 Bug 1580565 - Part 6: Add a unique ID to each BrowsingContextGroup, r=kmag
This allows us to explicitly specify BrowsingContextGroups when synchronizing
them. A major advantage of this is that it means we can handle an attempt to
create a BrowsingContext with a parent which the content process is unaware of,
which is possible due to changes to the EnsureSubscribed logic in earlier
patches in this stack.

This is OK, because in the case where the content process cannot see its parent,
the parent must be imminently discarding.

Differential Revision: https://phabricator.services.mozilla.com/D71668
2020-04-23 21:52:51 +00:00
Nika Layzell 8f2ceafb38 Bug 1580565 - Part 4: Use WindowContext to manage BrowsingContext cached status, r=farre
The existing infrastructure which stored cached BrowsingContexts on the
BrowsingContextGroup was added before WindowContexts were added, and can cause
racing issues with partially discarded trees during process switches.

Differential Revision: https://phabricator.services.mozilla.com/D71238
2020-04-23 21:52:47 +00:00
Arthur Iakab c278cf13d3 Backed out 2 changesets (bug 1576188) for causing browser-chrome failures on browser_persist_cross_origin_iframe.js
CLOSED TREE

Backed out changeset d2c102f8d898 (bug 1576188)
Backed out changeset 9ddd9a63d178 (bug 1576188)
2020-04-23 19:38:58 +03:00
Dimi Lee 5ff0f8a47c Bug 1616775 - P7. Add IPC for ContentBlockingNotifier::OnDecision r=timhuang,baku
Differential Revision: https://phabricator.services.mozilla.com/D71016
2020-04-23 14:25:33 +00:00
Dimi Lee ae0eb1b968 Bug 1616775 - P6. Add OnAllowAccessFor to process tasks that need a parent window. r=timhuang,baku
Differential Revision: https://phabricator.services.mozilla.com/D71015
2020-04-23 14:25:31 +00:00
Dimi Lee 00aeb88f21 Bug 1616775 - P4. Add CompleteAllowAccessFor IPDL r=timhuang,baku
Differential Revision: https://phabricator.services.mozilla.com/D71013
2020-04-23 14:25:16 +00:00
Andreas Farre 6a4f39685d Bug 1576188 - Handle save-as for cross process iframes. r=peterv
Depends on D70388

Differential Revision: https://phabricator.services.mozilla.com/D70389
2020-04-23 13:56:26 +00:00
Andreea Pavel b74d860d87 Backed out 7 changesets (bug 1580565) for bc failures on a CLOSED TREE
Backed out changeset e44e0a6366f8 (bug 1580565)
Backed out changeset c0849928f934 (bug 1580565)
Backed out changeset 3d4f155096be (bug 1580565)
Backed out changeset 108d5fb4418e (bug 1580565)
Backed out changeset d8dea951a032 (bug 1580565)
Backed out changeset f9ab41f29552 (bug 1580565)
Backed out changeset fd5d76304c09 (bug 1580565)
2020-04-22 21:51:17 +03:00
Nika Layzell 34024af634 Bug 1580565 - Part 6: Add a unique ID to each BrowsingContextGroup, r=kmag
This allows us to explicitly specify BrowsingContextGroups when synchronizing
them. A major advantage of this is that it means we can handle an attempt to
create a BrowsingContext with a parent which the content process is unaware of,
which is possible due to changes to the EnsureSubscribed logic in earlier
patches in this stack.

This is OK, because in the case where the content process cannot see its parent,
the parent must be imminently discarding.

Differential Revision: https://phabricator.services.mozilla.com/D71668
2020-04-22 16:25:18 +00:00
Nika Layzell 7a75edbe29 Bug 1580565 - Part 4: Use WindowContext to manage BrowsingContext cached status, r=farre
The existing infrastructure which stored cached BrowsingContexts on the
BrowsingContextGroup was added before WindowContexts were added, and can cause
racing issues with partially discarded trees during process switches.

Differential Revision: https://phabricator.services.mozilla.com/D71238
2020-04-22 15:48:17 +00:00
Dorel Luca 7daa9a6695 Backed out 7 changesets (bug 1580565) for Gecko-view failures in Test.crashParent. CLOSED TREE
Backed out changeset 7da9785ebb06 (bug 1580565)
Backed out changeset a80e177a91b2 (bug 1580565)
Backed out changeset 2cf821f2a6ea (bug 1580565)
Backed out changeset a30f158eba45 (bug 1580565)
Backed out changeset 276b131190a8 (bug 1580565)
Backed out changeset 3c15e4c600c4 (bug 1580565)
Backed out changeset bf8877cdb10f (bug 1580565)
2020-04-22 18:42:24 +03:00
Nika Layzell 38bdb3ed64 Bug 1580565 - Part 6: Add a unique ID to each BrowsingContextGroup, r=kmag
This allows us to explicitly specify BrowsingContextGroups when synchronizing
them. A major advantage of this is that it means we can handle an attempt to
create a BrowsingContext with a parent which the content process is unaware of,
which is possible due to changes to the EnsureSubscribed logic in earlier
patches in this stack.

This is OK, because in the case where the content process cannot see its parent,
the parent must be imminently discarding.

Differential Revision: https://phabricator.services.mozilla.com/D71668
2020-04-22 03:22:07 +00:00
Nika Layzell 60ee58560f Bug 1580565 - Part 4: Use WindowContext to manage BrowsingContext cached status, r=farre
The existing infrastructure which stored cached BrowsingContexts on the
BrowsingContextGroup was added before WindowContexts were added, and can cause
racing issues with partially discarded trees during process switches.

Differential Revision: https://phabricator.services.mozilla.com/D71238
2020-04-22 06:05:41 +00:00
Bogdan Tara 4bd759fa8e Backed out 7 changesets (bug 1580565) for browser_entry_point_telemetry.js failures CLOSED TREE
Backed out changeset 12a4f3de76a8 (bug 1580565)
Backed out changeset 81d537df2dc1 (bug 1580565)
Backed out changeset b182e872c9d4 (bug 1580565)
Backed out changeset 0b4595b2c153 (bug 1580565)
Backed out changeset 4363e3a3d799 (bug 1580565)
Backed out changeset cbb14b2c7b33 (bug 1580565)
Backed out changeset 46b251848297 (bug 1580565)
2020-04-22 06:15:43 +03:00
Makoto Kato f052a12a9d Bug 1626389 - Part 2. Remove unnecessary GetShowPasswordSetting sync IPC. r=mccr8
GeckoView no longer uses this sync IPC, so we should remove this.

Differential Revision: https://phabricator.services.mozilla.com/D71708
2020-04-21 17:31:00 +00:00
Nika Layzell 5708211961 Bug 1580565 - Part 6: Add a unique ID to each BrowsingContextGroup, r=kmag
This allows us to explicitly specify BrowsingContextGroups when synchronizing
them. A major advantage of this is that it means we can handle an attempt to
create a BrowsingContext with a parent which the content process is unaware of,
which is possible due to changes to the EnsureSubscribed logic in earlier
patches in this stack.

This is OK, because in the case where the content process cannot see its parent,
the parent must be imminently discarding.

Differential Revision: https://phabricator.services.mozilla.com/D71668
2020-04-22 01:38:05 +00:00
Nika Layzell 88b3fbe306 Bug 1580565 - Part 4: Use WindowContext to manage BrowsingContext cached status, r=farre
The existing infrastructure which stored cached BrowsingContexts on the
BrowsingContextGroup was added before WindowContexts were added, and can cause
racing issues with partially discarded trees during process switches.

Differential Revision: https://phabricator.services.mozilla.com/D71238
2020-04-22 01:37:55 +00:00
Gijs Kruitbosch c58b8f6ff2 Bug 1631358 - remove CPOW support in the message manager, r=mccr8
This commit:

- removes sendRpcMessage, which was unused;
- removes the CPOW argument to sendAsyncMessage, broadcastAsyncMessage, and
  sendSyncMessage;
- removes the aIsSync argument used internally to distinguish sendRpcMessage
  and sendSyncMessage;
- removes CPOW tests;
- updates the few remaining callsites that use more than 2 arguments in
  sendAsyncMessage for the removal of the cpows argument.

Differential Revision: https://phabricator.services.mozilla.com/D71514
2020-04-21 14:07:57 +00:00
Noemi Erli c0bd1834c8 Backed out 19 changesets (bug 1602318) for causing multiple failures
Backed out changeset 4b3345b2e33b (bug 1602318)
Backed out changeset 7240b27afe28 (bug 1602318)
Backed out changeset a7091729d8c9 (bug 1602318)
Backed out changeset e496ab6c0857 (bug 1602318)
Backed out changeset 184da6309f0c (bug 1602318)
Backed out changeset 79b540f8619d (bug 1602318)
Backed out changeset b298015ee960 (bug 1602318)
Backed out changeset 6d0783cd5e01 (bug 1602318)
Backed out changeset cbc308486b17 (bug 1602318)
Backed out changeset 94142944fb54 (bug 1602318)
Backed out changeset 7c1eeb299b78 (bug 1602318)
Backed out changeset 0fc27502503a (bug 1602318)
Backed out changeset 0fc27c2e09d9 (bug 1602318)
Backed out changeset b5e2aa4741b2 (bug 1602318)
Backed out changeset 57d568114c5a (bug 1602318)
Backed out changeset 8f7360d827dc (bug 1602318)
Backed out changeset 78930a97c2df (bug 1602318)
Backed out changeset 8015780587cd (bug 1602318)
Backed out changeset bc9da03cb3a3 (bug 1602318)
2020-04-21 03:46:41 +03:00
Matt Woodrow 8c122b6d22 Bug 1602318 - Make RemoteWebProgress:stop also stop any current loads in the parent process. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D70626
2020-04-20 23:02:32 +00:00
Kris Maglione 1d79fbe4d7 Bug 1614462: Part 1 - Remove unused message principals. r=nika
These were added for the sake of app browsers, and all of the code which
actually needed them has since been removed.

Differential Revision: https://phabricator.services.mozilla.com/D70741
2020-04-20 22:15:19 +00:00
Ciure Andrei a5ac2a8bbc Backed out 10 changesets (bug 1614462) for causing test_ipc_messagemanager_blob.js failures CLOSED TREE
Backed out changeset bf4f8253c708 (bug 1614462)
Backed out changeset c61b797d63e9 (bug 1614462)
Backed out changeset 284002de7137 (bug 1614462)
Backed out changeset 7f604ee5731c (bug 1614462)
Backed out changeset a73ef8167cd4 (bug 1614462)
Backed out changeset ecc3477ed34e (bug 1614462)
Backed out changeset 2106f3ccc4b5 (bug 1614462)
Backed out changeset e68c38a7741d (bug 1614462)
Backed out changeset 93b3bacdbb34 (bug 1614462)
Backed out changeset 0cf4898ae08d (bug 1614462)
2020-04-21 01:11:37 +03:00
Kris Maglione 4660e2ccc6 Bug 1614462: Part 1 - Remove unused message principals. r=nika
These were added for the sake of app browsers, and all of the code which
actually needed them has since been removed.

Differential Revision: https://phabricator.services.mozilla.com/D70741
2020-04-20 20:11:29 +00:00
Kershaw Chang 85532d60f8 Bug 1626076 - Make it possible to use DataStorage on socket process r=keeler,dragana,necko-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D68877
2020-04-20 09:41:58 +00:00
David Teller 021fdf8b13 Bug 1605209 - Turn actor names into nsCString;r=nika
This should save (a little) memory and avoid quite a few conversions.

Differential Revision: https://phabricator.services.mozilla.com/D70341
2020-04-17 10:56:22 +00:00
Daniel Varga ca80197a2f Backed out 4 changesets (bug 1605209) for causing browser-chrome failures at dom/ipc/tests/JSWindowActor/browser_crash_report.js
CLOSED TREE

Backed out changeset 6eb1cc169dbf (bug 1605209)
Backed out changeset d81b566ad94f (bug 1605209)
Backed out changeset e0e6dbf1d48d (bug 1605209)
Backed out changeset 289f5bbac1ae (bug 1605209)
2020-04-17 13:49:04 +03:00
David Teller 5435691b55 Bug 1605209 - Turn actor names into nsCString;r=nika
This should save (a little) memory and avoid quite a few conversions.

Differential Revision: https://phabricator.services.mozilla.com/D70341
2020-04-16 08:58:21 +00:00
Ciure Andrei c15dcac93b Backed out 10 changesets (bug 1614462) for causing xpcshell failures CLOSED TREE
Backed out changeset 34d4a86530b4 (bug 1614462)
Backed out changeset dbc2e2556d08 (bug 1614462)
Backed out changeset 512bbab4730c (bug 1614462)
Backed out changeset cd6b8d630f4c (bug 1614462)
Backed out changeset e4ad5037658f (bug 1614462)
Backed out changeset 0ffed1dc4296 (bug 1614462)
Backed out changeset 90ed81cbfe34 (bug 1614462)
Backed out changeset 6d2137eb1d52 (bug 1614462)
Backed out changeset b4819c99e16e (bug 1614462)
Backed out changeset b7deaed376ed (bug 1614462)
2020-04-17 02:26:14 +03:00
Kris Maglione 0cbfb2510e Bug 1614462: Part 1 - Remove unused message principals. r=nika
These were added for the sake of app browsers, and all of the code which
actually needed them has since been removed.

Differential Revision: https://phabricator.services.mozilla.com/D70741
2020-04-16 16:58:08 +00:00
Marco Bonardo fb0662edda Bug 1628906 - First search in a tab from location bar could trigger an "Invalid URL" error page. r=Gijs,nika,mattwoodrow
Before 1496578, URIFixup::keywordToURI used to do a synchronous IPC call to be
able to access search engines from the content process. Consumers of URIFixup
didn't care. Bug 1496578 moved the IPC messaging to the callers, in particular
nsDocShell, but assumed nsDocShellLoadState wasn't loading from content.
It looks like in some cases it does, so this adds another sync IPC call for
GetFixupURIInfo.
The total numer of sync IPCs should not change from before Bug 1496578, URIFIxup
was just doing it internally, while now it happens at the call point.
Note the long term plan would be for these docshell objects callers to just
handle URIs, while the UI code should do fixup.
Bug 1375244 tracks the removal of these sync IPC messages.

Differential Revision: https://phabricator.services.mozilla.com/D70607

--HG--
extra : moz-landing-system : lando
2020-04-15 22:39:38 +00:00
Matt Woodrow e600940a82 Bug 1597159 - Defer creating DocumentLoadListener's stream filter until after we process switch. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D64698

--HG--
extra : moz-landing-system : lando
2020-04-09 07:03:49 +00:00
Brindusan Cristian 21cc9ecac2 Backed out 3 changesets (bug 1597159) for build bustages on netwerk/ipc/target-objects. CLOSED TREE
Backed out changeset 2dd2598b3edb (bug 1597159)
Backed out changeset 0ad16f200740 (bug 1597159)
Backed out changeset 927e82a323c6 (bug 1597159)
2020-04-09 07:12:47 +03:00
Matt Woodrow 42aeff7415 Bug 1597159 - Defer creating DocumentLoadListener's stream filter until after we process switch. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D64698

--HG--
extra : moz-landing-system : lando
2020-04-09 02:55:17 +00:00
Gabriele Svelto 2bc88d71e0 Bug 1614933 - Gather content processes' crash annotations at exception time instead of using IPC; r=froydnj
Crash annotations in content processes are currently sent over IPC via
shared memory buffers. To pave the way for the Rust rewrite of the exception
handler we are removing this code and gathering all the crash annotations
within the content processes themselves. This patch causes annotations to be
stored in the global table of each content process. They are then streamed
out to the parent process by the exception handler together with the
exception-time annotations.

This has a number of benefits:

* we have one less channel to exchange data between content processes and
  the parent process
* we save memory because we don't need to allocate the shared memory buffers
* annotations are faster because we don't stream them all out every time one
  changes
* we won't truncate annotations anymore if we run out of space in the shared
  segment.
* we don't need delayed annotations anymore, so we can get rid of the
  associated machinery

As I refactored the code I tried to adjust all the obsolete comments,
consolidate shared code and remove the redundant steps that were sometimes
present. In many places we had two entire crash annotation tables we merged to
change just a couple; that comes from the fact that historically we loaded
them from disk. Now it doesn't matter anymore and we can just go ahead and
change the ones we care about.

Differential Revision: https://phabricator.services.mozilla.com/D62586

--HG--
extra : moz-landing-system : lando
2020-04-08 06:55:40 +00:00
Nika Layzell 17acacfbf5 Bug 1616353 - Part 7.2: Create and use nsOpenWindowInfo types in nsWindowWatcher logic, r=kmag
This patch builds on top of part 7.1 by creating this object within
nsWindowWatcher and ContentParent to carry the relevant information through
provider interfaces when creating new content windows. The nsOpenWindowInfo
object is not created for new chrome windows.

This patch does not propagate these flags all of the way through to the
nsFrameLoader. That change is performed in later parts to keep each part
smaller.

Differential Revision: https://phabricator.services.mozilla.com/D67051

--HG--
extra : moz-landing-system : lando
2020-04-07 21:39:32 +00:00
Dimi Lee 240f6cf0c4 Bug 1624607 - P2. Use window id instead of top-level stroage principal r=timhuang,baku
Depends on D68052

Differential Revision: https://phabricator.services.mozilla.com/D68053

--HG--
extra : moz-landing-system : lando
2020-04-07 18:09:51 +00:00
Andreas Farre 25ca8d7890 Bug 1620594 - Part 7: Remove TabGroup and SystemGroup. r=nika,bas
TabGroup never really made any difference in which thread something go
dispatched to. This was the intended use, but development of TabGroups
with abstract main threads never made it that far. The good thing is
that thish makes it safe to also remove to the SystemGroup and instead
switch all SystemGroup dispatches to dispatches to main thread.

Timers for setTimeout and workers were the sole users of wrapped and
throttled event targets, that those throttled queues have been moved
to the BrowsingContextGroup and are now accessed explicitly.

The SchedulerEventTarget has been removed, since there are no longer a
separate event target for every TaskCategory. Instead a
LabellingEventTarget has been added to DocGroup to handle the case
where an event is dispatched do DocGroup or when an AbstractThread is
created using a DocGroup. This means that we'll actually label more
events correctly with the DocGroup that they belong to.

DocGroups have also been moved to BrowsingContextGroup.

Depends on D67636

Differential Revision: https://phabricator.services.mozilla.com/D65936

--HG--
extra : moz-landing-system : lando
2020-04-07 15:17:47 +00:00
Jonathan Kew 715e096b9a Bug 1550037 - patch 1 - Migrate shared font-list code from mozilla::ipc::SharedMemoryBasic to base::SharedMemory APIs. r=jwatt
The base::SharedMemory class provides APIs to create a "read-only" copy of a shared memory block,
which means it can be shared to a child process without the risk that the child might map it as
writable and corrupt the contents. We want to use this facility for the font list, hence switching
the shared-memory APIs used.

Differential Revision: https://phabricator.services.mozilla.com/D68778

--HG--
extra : moz-landing-system : lando
2020-04-07 12:30:17 +00:00
Mihai Alexandru Michis 5da80eeda9 Backed out 3 changesets (bug 1550037) for causing bustages in SharedFontList-impl.h
CLOSED TREE

Backed out changeset 34ebd6260867 (bug 1550037)
Backed out changeset 7571e5bc19e7 (bug 1550037)
Backed out changeset 71fdead8eecb (bug 1550037)
2020-04-07 13:11:17 +03:00
Jonathan Kew 1bf1c749a5 Bug 1550037 - patch 1 - Migrate shared font-list code from mozilla::ipc::SharedMemoryBasic to base::SharedMemory APIs. r=jwatt
The base::SharedMemory class provides APIs to create a "read-only" copy of a shared memory block,
which means it can be shared to a child process without the risk that the child might map it as
writable and corrupt the contents. We want to use this facility for the font list, hence switching
the shared-memory APIs used.

Differential Revision: https://phabricator.services.mozilla.com/D68778

--HG--
extra : moz-landing-system : lando
2020-04-07 09:23:24 +00:00
Chris Martin 64e1fb7a45 Bug 1540776 - Have parent send color profile to child during launch r=aosmond,jld,jfkthame,florian
For Win32k lockdown, we need to remove the content processes' ability to
call GetICMProfileW(). Since it needs this to retrieve the output color
profile, a new synchronous call is added that allows it to request the
parent process to read this file on its behalf.

The contents of the file are now being cached as well, as this should help
ease some of the increased parent process I/O caused by the children not
being able to do this in their process anymore.

For performance reasons, during launch this information is passed directly
to the child through the SetXPCOMProcessAttributes call

Differential Revision: https://phabricator.services.mozilla.com/D66126

--HG--
extra : moz-landing-system : lando
2020-04-02 15:42:15 +00:00
Bogdan Tara 40fdcf8307 Backed out 2 changesets (bug 1621726) for web platform test failures CLOSED TREE
Backed out changeset ebe18133a194 (bug 1621726)
Backed out changeset c43c38de33b2 (bug 1621726)
2020-04-06 22:03:02 +03:00
Cosmin Sabou aefb5f9c88 Backed out 24 changesets (bug 1616353) for fission assertion failures nsGlobalWindowOuter.cpp.
Backed out changeset 3a43210e4900 (bug 1616353)
Backed out changeset cb77e9149cf8 (bug 1616353)
Backed out changeset 3aacc7cfe33f (bug 1616353)
Backed out changeset c026b06063a5 (bug 1616353)
Backed out changeset 580e790c5d17 (bug 1616353)
Backed out changeset 6f09bc1c476d (bug 1616353)
Backed out changeset 6955906262c0 (bug 1616353)
Backed out changeset a7700472807a (bug 1616353)
Backed out changeset a4735096e01b (bug 1616353)
Backed out changeset bd1706c57d91 (bug 1616353)
Backed out changeset 363c13296fda (bug 1616353)
Backed out changeset e414df387524 (bug 1616353)
Backed out changeset 765d3364cca0 (bug 1616353)
Backed out changeset 8a13355b4ac4 (bug 1616353)
Backed out changeset ada17fb8fca7 (bug 1616353)
Backed out changeset 6b6b99af186d (bug 1616353)
Backed out changeset ea966e78b296 (bug 1616353)
Backed out changeset cb88e0bbb3b9 (bug 1616353)
Backed out changeset f89a89015114 (bug 1616353)
Backed out changeset ae6058552969 (bug 1616353)
Backed out changeset f42bb5b48c1b (bug 1616353)
Backed out changeset 1ab9d22c73bb (bug 1616353)
Backed out changeset 2692c2c1396b (bug 1616353)
Backed out changeset 11a279c8da08 (bug 1616353)
2020-04-06 20:03:02 +03:00
Nika Layzell b6d18805e0 Bug 1621726 - Part 1: Manage PWindowGlobal with PContent instead of PBrowser, r=farre
Previously, the PWindowGlobal actor was managed by the PBrowser which hosted it,
however this could cause issues when the tab containing the PWindowGlobal was
being destroyed. Due to the slightly different lifecycles of the PBrowser actor
and the nsGlobalWindowInner which the PWindowGlobal was trying to match the
lifetime of, the actor would sometimes not fire 'willDestroy' events correctly.

This patch moves PWindowGlobal to be directly managed by PContent, and changes
logic which previously used `Manager()` to get `Browser{Parent,Child}` to
instead use a pointer member.

Differential Revision: https://phabricator.services.mozilla.com/D68596

--HG--
extra : moz-landing-system : lando
2020-04-06 15:06:30 +00:00
Nika Layzell 0d1eecbd25 Bug 1616353 - Part 7.2: Create and use nsOpenWindowInfo types in nsWindowWatcher logic, r=kmag
This patch builds on top of part 7.1 by creating this object within
nsWindowWatcher and ContentParent to carry the relevant information through
provider interfaces when creating new content windows. The nsOpenWindowInfo
object is not created for new chrome windows.

This patch does not propagate these flags all of the way through to the
nsFrameLoader. That change is performed in later parts to keep each part
smaller.

Differential Revision: https://phabricator.services.mozilla.com/D67051

--HG--
extra : moz-landing-system : lando
2020-04-06 14:30:02 +00:00
Jonathan Kew 1e295dc3cc Bug 1619350 - patch 1 - Add a FontVisibility enumeration to determine whether fonts should be visible by name to CSS, and provide a visibility field in font family records. r=jwatt
This replaces and extends the "hidden" flag we currently use on macOS to mark internal system fonts
like .LastResort and .Keyboard that should not be exposed; rather than just a boolean "hidden" flag
we'll have several levels of visibility, some of which the user may opt in to exposing (at the cost
of potentially becoming more fingerprintable).

The current patch assumes three levels besides always-hidden:

  Base     - fonts that are part of the base OS install and always available
  LangPack - fonts that are provided by the OS subject to user's chosen language options
  User     - user-installed fonts that were not provided by the OS

(This categorization may be subject to revision as we learn more about real-world needs and
configurations.)

Differential Revision: https://phabricator.services.mozilla.com/D66124

--HG--
extra : moz-landing-system : lando
2020-04-02 12:36:24 +00:00
alwu 44bd719954 Bug 1623486 - part3 : add a method on ContentMediaController to propagate Picture-in-Picture status to the chrome process. r=chunmin
Differential Revision: https://phabricator.services.mozilla.com/D67711

--HG--
extra : moz-landing-system : lando
2020-04-01 23:03:01 +00:00
Ciure Andrei e1cb0f1e21 Backed out 4 changesets (bug 1619349, bug 1619350) for causing test_font_whitelist.html to fail CLOSED TREE
Backed out changeset ba16b09b5da0 (bug 1619349)
Backed out changeset f8ca02252dfc (bug 1619349)
Backed out changeset 01a2a527aa1a (bug 1619350)
Backed out changeset 67ee13868a44 (bug 1619350)
2020-04-02 04:34:31 +03:00
Jonathan Kew 503dffb1e0 Bug 1619350 - patch 1 - Add a FontVisibility enumeration to determine whether fonts should be visible by name to CSS, and provide a visibility field in font family records. r=jwatt
This replaces and extends the "hidden" flag we currently use on macOS to mark internal system fonts
like .LastResort and .Keyboard that should not be exposed; rather than just a boolean "hidden" flag
we'll have several levels of visibility, some of which the user may opt in to exposing (at the cost
of potentially becoming more fingerprintable).

The current patch assumes three levels besides always-hidden:

  Base     - fonts that are part of the base OS install and always available
  LangPack - fonts that are provided by the OS subject to user's chosen language options
  User     - user-installed fonts that were not provided by the OS

(This categorization may be subject to revision as we learn more about real-world needs and
configurations.)

Differential Revision: https://phabricator.services.mozilla.com/D66124

--HG--
extra : moz-landing-system : lando
2020-03-26 18:39:43 +00:00
nika 3ac24d06a9 Bug 1557118, add support for filtering actor creation based on the messagemanagergroup attribute set on browser elements, r=farre
Differential Revision: https://phabricator.services.mozilla.com/D68780

--HG--
extra : moz-landing-system : lando
2020-04-01 12:59:19 +00:00
Csoregi Natalia 7f39c4edfb Backed out changeset 9e1fba94da3a (bug 1621726) for bustages on WinHeaderOnlyUtils.h. CLOSED TREE
--HG--
extra : histedit_source : 475a57cb7d987f9ce3e1cf35e46292bc9b588a24
2020-04-01 00:05:16 +03:00
sonakshi a6f08454e0 Bug 1622619 - Replace URIParams with nsIURI in PContent.ipdl r=valentin
Differential Revision: https://phabricator.services.mozilla.com/D67729

--HG--
extra : moz-landing-system : lando
2020-03-31 18:47:30 +00:00
Nika Layzell 33e15617d3 Bug 1621726 - Manage PWindowGlobal with PContent instead of PBrowser, r=farre
Previously, the PWindowGlobal actor was managed by the PBrowser which hosted it,
however this could cause issues when the tab containing the PWindowGlobal was
being destroyed. Due to the slightly different lifecycles of the PBrowser actor
and the nsGlobalWindowInner which the PWindowGlobal was trying to match the
lifetime of, the actor would sometimes not fire 'willDestroy' events correctly.

This patch moves PWindowGlobal to be directly managed by PContent, and changes
logic which previously used `Manager()` to get `Browser{Parent,Child}` to
instead use a pointer member.

Differential Revision: https://phabricator.services.mozilla.com/D68596

--HG--
extra : moz-landing-system : lando
2020-03-31 17:47:51 +00:00
Razvan Maries 40412d7928 Backed out changeset 2515c5b5a0d2 (bug 1622619) for build bustages. CLOSED TREE 2020-03-31 17:18:38 +03:00
sonakshi fc4a38cd03 Bug 1622619 - Replace URIParams with nsIURI in PContent.ipdl r=valentin
Differential Revision: https://phabricator.services.mozilla.com/D67729

--HG--
extra : moz-landing-system : lando
2020-03-31 13:38:55 +00:00
Kirk Steuber acc51b1485 Bug 1568994 - Add Update URL template to application.ini, XREAppData, and Services.appinfo r=glandium
This is being added to facilitate moving generation of the update URL to Rust (Bug 1567286). Once that has been completed, we should be able to remove the update URL from its current location in firefox.js so that it is not being duplicated in application.ini.

Differential Revision: https://phabricator.services.mozilla.com/D43300

--HG--
extra : moz-landing-system : lando
2020-03-26 00:57:13 +00:00
Razvan Maries dd48ca6c20 Backed out changeset 8b091426bc10 (bug 1540776) for build bustages. CLOSED TREE 2020-03-26 16:25:45 +02:00
Chris Martin 65292a10f3 Bug 1540776 - Have parent send color profile to child during launch r=aosmond,jld,jfkthame
For Win32k lockdown, we need to remove the content processes' ability to
call GetICMProfileW(). Since it needs this to retrieve the output color
profile, a new synchronous call is added that allows it to request the
parent process to read this file on its behalf.

The contents of the file are now being cached as well, as this should help
ease some of the increased parent process I/O caused by the children not
being able to do this in their process anymore.

For performance reasons, during launch this information is passed directly
to the child through the SetXPCOMProcessAttributes call

Differential Revision: https://phabricator.services.mozilla.com/D66126

--HG--
extra : moz-landing-system : lando
2020-03-26 13:44:56 +00:00
Brindusan Cristian 4646c1f41f Backed out 2 changesets (bug 1614933) for bc failures at browser_tabicon_after_bg_tab_crash.js.
Backed out changeset 59503d3a702f (bug 1614933)
Backed out changeset 578c8ba9598f (bug 1614933)
2020-03-22 17:30:07 +02:00
Gabriele Svelto 322404bebb Bug 1614933 - Gather content processes' crash annotations at exception time instead of using IPC; r=froydnj
Crash annotations in content processes are currently sent over IPC via
shared memory buffers. To pave the way for the Rust rewrite of the exception
handler we are removing this code and gathering all the crash annotations
within the content processes themselves. This patch causes annotations to be
stored in the global table of each content process. They are then streamed
out to the parent process by the exception handler together with the
exception-time annotations.

This has a number of benefits:

* we have one less channel to exchange data between content processes and
  the parent process
* we save memory because we don't need to allocate the shared memory buffers
* annotations are faster because we don't stream them all out every time one
  changes
* we won't truncate annotations anymore if we run out of space in the shared
  segment.
* we don't need delayed annotations anymore, so we can get rid of the
  associated machinery

As I refactored the code I tried to adjust all the obsolete comments,
consolidate shared code and remove the redundant steps that were sometimes
present. In many places we had two entire crash annotation tables we merged to
change just a couple; that comes from the fact that historically we loaded
them from disk. Now it doesn't matter anymore and we can just go ahead and
change the ones we care about.

Differential Revision: https://phabricator.services.mozilla.com/D62586

--HG--
extra : moz-landing-system : lando
2020-03-21 17:13:08 +00:00
Tooru Fujisawa 51880be4b3 Bug 1507375 - Restrict the controllability of UI parts visibility with features parameter of window.open. r=smaug
Make the features parameter of window.open just a condition for whether to open
a popup or a new tab.
Also remove dom.disable_window_open_feature.* prefs.

Differential Revision: https://phabricator.services.mozilla.com/D65926

--HG--
extra : moz-landing-system : lando
2020-03-19 09:13:12 +00:00
Noemi Erli db9c35d705 Backed out changeset 6fe5ce050c0d (bug 1507375) for failures in test_transformed_scrolling_repaints_3.html CLOSED TREE 2020-03-19 08:56:17 +02:00
Tooru Fujisawa 4270e3fedf Bug 1507375 - Restrict the controllability of UI parts visibility with features parameter of window.open. r=smaug
Make the features parameter of window.open just a condition for whether to open
a popup or a new tab.
Also remove dom.disable_window_open_feature.* prefs.

Differential Revision: https://phabricator.services.mozilla.com/D65926

--HG--
extra : moz-landing-system : lando
2020-03-19 03:50:25 +00:00
alwu c369eaed94 Bug 1582508 - part4 : propagate declared playback state to media session controller. r=chunmin
This patch includes the implementation of propagating declared playback state from the media session in the content process to the media session controller in the chrome process.

Differential Revision: https://phabricator.services.mozilla.com/D66341

--HG--
extra : moz-landing-system : lando
2020-03-17 00:17:36 +00:00
Mihai Alexandru Michis 3dc26ddcf3 Backed out changeset 18c3c5e79f1c (bug 1540776) for causing xpcshell failures in test_BHRObserver.js
CLOSED TREE
2020-03-17 00:41:38 +02:00
Dana Keeler 52ebda3e05 bug 1024871 - stop importing certificates when navigated to r=kjacobs,jld
Before this patch, PSM would register content type handlers to handle certain
certificate types. This was an easy way to install a client certificate after
generating a key with <keygen>, but keygen has been removed. This was also an
easy way to install root certificates, but that's actually a considerable
security risk. We kept this functionality for so long because it was the only
way to add a 3rd-party root certificate to Fennec's certificate store. Now that
Fennec is EOL, we can remove it. (Fenix will need a way to trust 3rd party root
certificates, but the path forward there is to implement the enterprise roots
feature for Android.)

Differential Revision: https://phabricator.services.mozilla.com/D66118

--HG--
extra : moz-landing-system : lando
2020-03-16 18:50:35 +00:00
Chris Martin a228b3b0d4 Bug 1540776 - Add sync IPC message for content to request color profile r=aosmond,jld
For Win32k lockdown, we need to remove the content processes' ability to
call GetICMProfileW(). Since it needs this to retrieve the output color
profile, a new synchronous call is added that allows it to request the
parent process to read this file on its behalf.

The contents of the file are now being cached as well, as this should help
ease some of the increased parent process I/O caused by the children not
being able to do this in their process anymore.

Differential Revision: https://phabricator.services.mozilla.com/D66126

--HG--
extra : moz-landing-system : lando
2020-03-16 16:31:51 +00:00
David Parks c2bab68f43 Bug 1430907: Part 1 - Remove AudioSession from Windows content process r=kinetik
AudioSession, which handles things like making sure that the volume slider in the system tray has the right name and icon and is aligned for all processes, is not needed in content processes any longer since bug 1432303 remoted audio use away from content.

Differential Revision: https://phabricator.services.mozilla.com/D64445

--HG--
extra : moz-landing-system : lando
2020-03-11 14:51:48 +00:00
Henri Sivonen 6276ea07ae Bug 1620172 - Use GetActiveBrowsingContext for full screen auto-exit. r=NeilDeakin
Differential Revision: https://phabricator.services.mozilla.com/D66009

--HG--
extra : moz-landing-system : lando
2020-03-11 16:00:45 +00:00
Kashav Madan 5f18b14d6d Bug 1578070 - Use the parent process for Clients.openWindow(), r=nika,asuth
Differential Revision: https://phabricator.services.mozilla.com/D64392

--HG--
extra : moz-landing-system : lando
2020-03-10 20:27:01 +00:00
Bogdan Tara fb2b3d4e41 Backed out 2 changesets (bug 1614933) for busages complaining about IdleSchedulerChild.cpp CLOSED TREE
Backed out changeset ff92f800a74e (bug 1614933)
Backed out changeset 5cee8f603ae4 (bug 1614933)
2020-03-10 17:21:55 +02:00
Gabriele Svelto 9336e8143b Bug 1614933 - Gather content processes' crash annotations at exception time instead of using IPC; r=froydnj
Crash annotations in content processes are currently sent over IPC via
shared memory buffers. To pave the way for the Rust rewrite of the exception
handler we are removing this code and gathering all the crash annotations
within the content processes themselves. This patch causes annotations to be
stored in the global table of each content process. They are then streamed
out to the parent process by the exception handler together with the
exception-time annotations.

This has a number of benefits:

* we have one less channel to exchange data between content processes and
  the parent process
* we save memory because we don't need to allocate the shared memory buffers
* annotations are faster because we don't stream them all out every time one
  changes
* we won't truncate annotations anymore if we run out of space in the shared
  segment.
* we don't need delayed annotations anymore, so we can get rid of the
  associated machinery

As I refactored the code I tried to adjust all the obsolete comments,
consolidate shared code and remove the redundant steps that were sometimes
present. In many places we had two entire crash annotation tables we merged to
change just a couple; that comes from the fact that historically we loaded
them from disk. Now it doesn't matter anymore and we can just go ahead and
change the ones we care about.

Differential Revision: https://phabricator.services.mozilla.com/D62586

--HG--
extra : moz-landing-system : lando
2020-03-10 14:59:22 +00:00
Anny Gakhokidze 5986a2de44 Bug 1546759 - Change nsSHistory::WalkHistoryEntries to walk browsing context tree instead of doc shell tree, r=peterv,nika
WalkHistoryEntries function gets called by nsSHistory::CloneAndReplaceChild
and nsSHistory::SetChildHistoryEntry recursively, so those have to be moved
into the parent process. This eliminates many sync IPC calls.

To facilitate transition to a new session history design,
we are mirroring mOSHE and mLSHE SH entries from docshell to browsing context.
Whenever we update those entries in docshell, we will also update those in BC,
and vice versa.

Differential Revision: https://phabricator.services.mozilla.com/D56201

--HG--
extra : moz-landing-system : lando
2020-03-10 14:28:22 +00:00
Jonathan Kew 3df4ab8b5e Bug 1620111 - Eliminate sync-IPC message ReadFontList, instead use SetXPCOMProcessAttributes to pass font list to the child process on Android. r=lsalzman,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D65742

--HG--
extra : moz-landing-system : lando
2020-03-09 12:27:45 +00:00
alwu 1d40019c19 Bug 1592037 - part3 : notifty updating media session's metadata. r=MeFisto94
Whenever media session's metadata changes in the content process, we would like to propogate the updated metadata to the media controller in the parent process in order to show that in the virtual media control interface, which would only be set in the chrome process.

Differential Revision: https://phabricator.services.mozilla.com/D64846

--HG--
extra : moz-landing-system : lando
2020-03-05 20:58:54 +00:00
Tim Huang 04d44bae12 Bug 1616570 - Part 1: Rename CookieSettings to CookieJarSettings. r=Ehsan
Given that we are going to add ContentBlockingAllowList in
CookieSettings, so CookieSettings will be responsible for more stuff than the
cookie behavior and cookie permission. We should use a proper name to
reflect the purpose of it. The name 'CookieSettings' is misleading that
this is only for cookie related stuff. So, we decide to rename
'CookieSettins' to 'CookieJarSettings' which serves better meaning here.

Differential Revision: https://phabricator.services.mozilla.com/D63935

--HG--
rename : netwerk/cookie/CookieSettings.cpp => netwerk/cookie/CookieJarSettings.cpp
rename : netwerk/cookie/nsICookieSettings.idl => netwerk/cookie/nsICookieJarSettings.idl
extra : moz-landing-system : lando
2020-03-04 08:59:08 +00:00
Matt Woodrow 0b6366e23e Bug 1617434 - Don't recreate ClientSource when we process switch. r=perry
Now that we're guaranteed to not have an existing ClientSource in the old process, we no longer need to allocate a new ClientInfo in the new process.
This lets us just create a ClientSource around the ClientInfo already on the channel (exactly as we do for same-process loads), and we no longer need to reconcile changes with the parent.

Differential Revision: https://phabricator.services.mozilla.com/D63808

--HG--
extra : moz-landing-system : lando
2020-03-04 02:47:57 +00:00
Andrew McCreight 4babb2b5ab Bug 1609815 - Remove Web Replay C++ implementation. r=jgilbert,jandem,gbrown
Patch by bhackett and jlaster. Also reviewed by mccr8.

Differential Revision: https://phabricator.services.mozilla.com/D60197

--HG--
extra : moz-landing-system : lando
2020-02-27 17:39:15 +00:00
Ciure Andrei 00dd87f6f4 Backed out changeset d407a28318e6 (bug 1609815) for causing windows ming bustages CLOSED TREE
--HG--
extra : histedit_source : b2c748e31e0f6ba8fcf9960a336e0bbd361b07e6
2020-02-27 07:05:19 +02:00
Andrew McCreight b197e1f783 Bug 1609815 - Remove Web Replay C++ implementation. r=jgilbert,jandem,gbrown
Patch by bhackett and jlaster. Also reviewed by mccr8.

Differential Revision: https://phabricator.services.mozilla.com/D60197

--HG--
extra : moz-landing-system : lando
2020-02-27 04:43:48 +00:00
Nika Layzell 199effbc30 Bug 1615403 - Part 9: Remove old BrowsingContext & WindowContext serializers, r=farre
These serializers have been superceded by the new
MaybeDiscarded<BrowsingContext> and MaybeDiscarded<WindowContext> serializers
added in earlier parts.

Differential Revision: https://phabricator.services.mozilla.com/D62838

--HG--
extra : moz-landing-system : lando
2020-02-20 23:30:56 +00:00
Nika Layzell 83006b3472 Bug 1615403 - Part 8: Use MaybeDiscarded for new focus methods, r=hsivonen
Differential Revision: https://phabricator.services.mozilla.com/D63374

--HG--
extra : moz-landing-system : lando
2020-02-20 23:30:54 +00:00
Nika Layzell 38b8556d89 Bug 1615403 - Part 7: Use MaybeDiscarded for PExternalAppHelperParent, r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D62934

--HG--
extra : moz-landing-system : lando
2020-02-20 23:30:52 +00:00
Nika Layzell 9fef430436 Bug 1615403 - Part 5: Use MaybeDiscarded for RestoreBrowsingContextChildren, r=farre
Differential Revision: https://phabricator.services.mozilla.com/D62836

--HG--
extra : moz-landing-system : lando
2020-02-20 23:30:47 +00:00
Nika Layzell 86a0f60017 Bug 1615403 - Part 4: Use MaybeDiscarded for PSHistory, r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D62835

--HG--
extra : moz-landing-system : lando
2020-02-20 23:30:45 +00:00
Nika Layzell 930087d6c6 Bug 1615403 - Part 3: Use MaybeDiscarded for postMessage source, r=farre
Differential Revision: https://phabricator.services.mozilla.com/D62834

--HG--
extra : moz-landing-system : lando
2020-02-20 23:30:38 +00:00
Nika Layzell 476ad24af9 Bug 1615403 - Part 2: Use MaybeDiscarded for direct IPC arguments, r=farre
Differential Revision: https://phabricator.services.mozilla.com/D62833

--HG--
extra : moz-landing-system : lando
2020-02-20 23:30:35 +00:00
Henri Sivonen ac7d3f7b2a Bug 1556627 - Make nsFocusManager::SetFocus work in Fission. r=NeilDeakin,farre,masayuki
Differential Revision: https://phabricator.services.mozilla.com/D55651

--HG--
extra : moz-landing-system : lando
2020-02-18 13:30:04 +00:00
alwu f4e6a6b835 Bug 1611332 - part3 : notify media session being created and destroyed. r=chunmin,bzbarsky
Update media session status from the content process to the chrome process in order to track all alive media session.

Differential Revision: https://phabricator.services.mozilla.com/D60936

--HG--
extra : moz-landing-system : lando
2020-02-07 09:30:03 +00:00
David Major 9457524c37 Bug 1613606 - Use nsIPrincipal in BlobURLRegistrationData r=nika
clang-10 hits a -Werror in IPDL headers about Principal's copy constructor not being explicitly defined. We could go and fix that constructor, but in light of bug 1443956, I'm guessing it's not really a bad thing to have a discouragement against Principal when nsIPrincipal is now usable directly.

Differential Revision: https://phabricator.services.mozilla.com/D62284

--HG--
extra : moz-landing-system : lando
2020-02-10 20:52:56 +00:00
Perry Jiang a0f4d9f5ad Bug 1611046 - add ServiceWorker shutdown progress tracking r=dom-workers-and-storage-reviewers,asuth
ServiceWorkerShutdownState encapsulates the shutdown progress for a particular
ServiceWorker. The shutdown process involves a "shutdown message" passing
multiple threads in both parent/content processes; we report a progress update
when it's known that a shutdown message has reached a particular thread. The
idea is that in the event of a shutdown timeout, ServiceWorkerShutdownBlocker
will be able to provide diagnostics for where shutdown processes are stalled.

Differential Revision: https://phabricator.services.mozilla.com/D60791

--HG--
extra : moz-landing-system : lando
2020-01-29 10:08:35 +00:00
Narcis Beleuzu 18ef916675 Backed out changeset a59d382a7950 (bug 1611046) for bustages on nsCodeCoverage.cpp 2020-01-27 13:38:30 +02:00
Perry Jiang 380587aa2f Bug 1611046 - add ServiceWorker shutdown progress tracking r=dom-workers-and-storage-reviewers,asuth
ServiceWorkerShutdownState encapsulates the shutdown progress for a particular
ServiceWorker. The shutdown process involves a "shutdown message" passing
multiple threads in both parent/content processes; we report a progress update
when it's known that a shutdown message has reached a particular thread. The
idea is that in the event of a shutdown timeout, ServiceWorkerShutdownBlocker
will be able to provide diagnostics for where shutdown processes are stalled.

Differential Revision: https://phabricator.services.mozilla.com/D60791

--HG--
extra : moz-landing-system : lando
2020-01-24 22:59:48 +00:00
Dimi Lee b9aa6a9945 Bug 1603053 - Move reportContentBlockingLog from the child to the parent r=timhuang,Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D56737

--HG--
extra : moz-landing-system : lando
2020-01-21 14:28:48 +00:00
Andreas Farre 68ac0a2401 Bug 1583863 - Part 3: WindowContext using SyncedContext, r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D56743

--HG--
extra : moz-landing-system : lando
2020-01-20 14:58:52 +00:00
pbz 70e1dba79e Bug 1432856 - Extended focus methods in Window.webidl, Client.webidl and Element.webidl to pass CallerType. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D55811

--HG--
extra : moz-landing-system : lando
2020-01-16 14:38:40 +00:00
Anny Gakhokidze 15952e531f Bug 1574017 - Fix console error reporting for postMessage, r=peterv
1. Rename mCallerDocumentURI field of PostMessageEvent to mCallerURI as we
might not always have a document, e.g. when we have a sandbox.
2. When we neither have caller's inner window (and thus we have no caller's
window ID) nor caller's URI, use script location as a source name for the error
object when reporting errors to console.
3. When the caller of postMessage has its window in a different process, pass along
the caller's window ID so that the error can be reported correctly.

Differential Revision: https://phabricator.services.mozilla.com/D59526

--HG--
extra : moz-landing-system : lando
2020-01-15 20:20:31 +00:00
Andrea Marchesini 502fbbd9f7 Bug 1472158 - Broadcast BlobURLs only to processes with the same loaded origins, r=farre,asuth
Differential Revision: https://phabricator.services.mozilla.com/D57637

--HG--
extra : moz-landing-system : lando
2020-01-09 08:15:49 +00:00
Yaron Tausky 877a273a69 Bug 1603976 - Warn when getting session storage data for discarded browsing context r=dom-workers-and-storage-reviewers,sg,janv
Under some (yet) unclear conditions it's possible for a content
process to send session storage data for a browsing context that's
already been discarded. This leads to an assertion failure when
deserializing the IPC message. This commit works around this issue
by sending the browsing context's ID over IPC and issuing a warning
instead of asserting that the browsing context still exists.

Differential Revision: https://phabricator.services.mozilla.com/D59096

--HG--
extra : moz-landing-system : lando
2020-01-08 15:38:34 +00:00
alwu 2d2b857325 Bug 1571493 - part3 : notify media state and audible state changes. r=chunmin
Modify IPC method to support notify `ControlledMediaState` to the media controller, and remove the previous implementation.

Differential Revision: https://phabricator.services.mozilla.com/D57572

--HG--
extra : moz-landing-system : lando
2020-01-03 01:34:34 +00:00
Ciure Andrei bdfec29e90 Backed out changeset 26694602791a (bug 1472158) for causing Bug 1583000 2019-12-22 15:22:58 +02:00
Andrea Marchesini 2702d32141 Bug 1472158 - Broadcast BlobURLs only to processes with the same loaded origins, r=farre
Differential Revision: https://phabricator.services.mozilla.com/D57637

--HG--
extra : moz-landing-system : lando
2019-12-20 04:28:04 +00:00
Ehsan Akhgari 1ca91dd7ab Bug 1603969 - Part 1: Remove the concept of granted origins from the anti-tracking backend; r=baku
Granted origins cause a third-party tracker browsing context to not get
full first-party storage access after successfully calling the storage
access API or a heuristic granting ephemeral access.

For example, after https://tracker.example calls the storage access API
successfully in the third-party context, they embed
https://other-tracker.example, and that load fails because of ETP
restrictions.  Here what happens is that https://other-tracker.example
is mistakenly considered the granted origin, and because such a
permission doesn't exist, access is denied.

Differential Revision: https://phabricator.services.mozilla.com/D57493

--HG--
extra : moz-landing-system : lando
2019-12-19 02:56:52 +00:00
Gurzau Raul bed8b9f116 Backed out 4 changesets (bug 1603969) for failing at /browser_startup_mainthreadio.js on a CLOSED TREE.
Backed out changeset c4d79087eef1 (bug 1603969)
Backed out changeset 2c0198f3506c (bug 1603969)
Backed out changeset c5ad252c525b (bug 1603969)
Backed out changeset a334451b95eb (bug 1603969)
2019-12-19 02:08:09 +02:00
Alastor Wu dac39bbeb9 Bug 1601144 - use 'MediaControlKeysEvent' to replace 'MediaControlActions'. r=chunmin
They are all used to control media, so we could unify them to one type.

Differential Revision: https://phabricator.services.mozilla.com/D57351

--HG--
extra : moz-landing-system : lando
2019-12-18 22:37:39 +00:00
Thomas Wisniewski 1e12d53224 Bug 1553265 - add a document.addCertException function to about:certerror pages and use it there; also treat GeckoView error pages as CallerIsTrusted(Net|Cert)Error; r=snorp,johannh,baku
Add a document.addCertException function to about:certerror pages, and use it on the desktop certerror page.

Also, as the CallerIsTrusted* functions expect URLs like about:certerror, but GeckoView error pages are data URLs, and so need to be handled differently for these special error-page methods to be exposed on their documents.

Example usage of document.addCertException:
  document.addCertException(
    true|false /* true == temporary, false == permanent */
  ).then(
    () => {
      location.reload();
    },
    err => {
      console.error(err);
    }
  );

Differential Revision: https://phabricator.services.mozilla.com/D56974

--HG--
extra : moz-landing-system : lando
2019-12-18 21:55:32 +00:00
Ehsan Akhgari 1676da33c8 Bug 1603969 - Part 1: Remove the concept of granted origins from the anti-tracking backend; r=baku
Granted origins cause a third-party tracker browsing context to not get
full first-party storage access after successfully calling the storage
access API or a heuristic granting ephemeral access.

For example, after https://tracker.example calls the storage access API
successfully in the third-party context, they embed
https://other-tracker.example, and that load fails because of ETP
restrictions.  Here what happens is that https://other-tracker.example
is mistakenly considered the granted origin, and because such a
permission doesn't exist, access is denied.

Differential Revision: https://phabricator.services.mozilla.com/D57493

--HG--
extra : moz-landing-system : lando
2019-12-18 19:14:53 +00:00
Gurzau Raul e92fa08412 Backed out 4 changesets (bug 1603969) for failing at /browser_startup_mainthreadio.js on a CLOSED TREE.
Backed out changeset 959f12e42db9 (bug 1603969)
Backed out changeset 18bf461b9630 (bug 1603969)
Backed out changeset 8c3bb23a048b (bug 1603969)
Backed out changeset 450eec13d73e (bug 1603969)
2019-12-18 20:53:13 +02:00
Ehsan Akhgari 9852e6494c Bug 1603969 - Part 1: Remove the concept of granted origins from the anti-tracking backend; r=baku
Granted origins cause a third-party tracker browsing context to not get
full first-party storage access after successfully calling the storage
access API or a heuristic granting ephemeral access.

For example, after https://tracker.example calls the storage access API
successfully in the third-party context, they embed
https://other-tracker.example, and that load fails because of ETP
restrictions.  Here what happens is that https://other-tracker.example
is mistakenly considered the granted origin, and because such a
permission doesn't exist, access is denied.

Differential Revision: https://phabricator.services.mozilla.com/D57493

--HG--
extra : moz-landing-system : lando
2019-12-18 15:48:29 +00:00
Cosmin Sabou fbd904633a Backed out changeset b1e1671fd704 (bug 1553265) for gv-unit failures. 2019-12-18 03:18:14 +02:00
Thomas Wisniewski 63935c0afe Bug 1553265 - add a document.addCertException function to about:certerror pages and use it there; also treat GeckoView error pages as CallerIsTrusted(Net|Cert)Error; r=snorp,johannh,baku
Add a document.addCertException function to about:certerror pages, and use it on the desktop certerror page.

Also, as the CallerIsTrusted* functions expect URLs like about:certerror, but GeckoView error pages are data URLs, and so need to be handled differently for these special error-page methods to be exposed on their documents.

Example usage of document.addCertException:
  document.addCertException(
    true|false /* true == temporary, false == permanent */
  ).then(
    () => {
      location.reload();
    },
    err => {
      console.error(err);
    }
  );

Differential Revision: https://phabricator.services.mozilla.com/D56974

--HG--
extra : moz-landing-system : lando
2019-12-17 21:54:32 +00:00
Oana Pop Rus 661db3a39f Backed out 7 changesets (bug 1432856) for build bustages failures in nsWindow.h on a CLOSED TREE
Backed out changeset 3d08c3cce533 (bug 1432856)
Backed out changeset 49d03dd89b17 (bug 1432856)
Backed out changeset 62fc84c8ce99 (bug 1432856)
Backed out changeset a8a4fa63f5b2 (bug 1432856)
Backed out changeset c81f3d5b9bf3 (bug 1432856)
Backed out changeset 8351a8b1d96a (bug 1432856)
Backed out changeset a303b775a51b (bug 1432856)
2019-12-16 23:53:35 +02:00
pbz e03ecc2171 Bug 1432856 - Extended focus methods in Window.webidl, Client.webidl and Element.webidl to pass CallerType. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D55811

--HG--
extra : moz-landing-system : lando
2019-12-16 21:06:11 +00:00
Yaron Tausky 2381d5552e Bug 1593246 - Part 5: Replicate session storage data r=janv,asuth
This commit implements a simple data replication scheme, where
each content process receives a copy of the relevant session
storage data when navigating, and sending all its session storage
data to the parent process before shutting down.

Differential Revision: https://phabricator.services.mozilla.com/D55662

--HG--
extra : moz-landing-system : lando
2019-12-13 09:45:55 +00:00
Matt Woodrow 7b9f6cbbdc Bug 1589123 - Do BrowsingContext::LoadURI messages via PContent, not PWindowGlobal since we might not have a current global. r=kmag
Depends on D56818

Differential Revision: https://phabricator.services.mozilla.com/D56820

--HG--
extra : moz-landing-system : lando
2019-12-12 02:32:00 +00:00
Johann Hofmann 749da501d5 Bug 1600942 - Remove userHadInteractedWithDocument and documentDOMContentLoadedTimestamp attributes from nsIContentPermissionPrompt. r=Ehsan
Differential Revision: https://phabricator.services.mozilla.com/D56540

--HG--
extra : moz-landing-system : lando
2019-12-10 14:38:30 +00:00