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

6286 Коммитов

Автор SHA1 Сообщение Дата
Mike Hommey 53fee2f4c4 Bug 1675437 - Use preprocessor to create Info.plist files. r=firefox-build-system-reviewers,mhentges
While we're in the vicinity, change the manual preprocessing of
Info.plist.in to uses of the preprocessor.

Differential Revision: https://phabricator.services.mozilla.com/D96014
2020-11-05 15:03:47 +00:00
Mike Hommey ead183252e Bug 1675437 - Avoid using iconv to create InfoPlist.strings. r=firefox-build-system-reviewers,mhentges
Since python creates little-endian utf-16 consistently whether
cross-compiling from Linux or compiling natively on macOS, we could
write a small script that essentially replaces iconv. On the other hand,
we're also doing some manual preprocessing on the InfoPlist.strings.in
files, and we might as well use the preprocessor for that.

So, we augment the preprocessor to allow an explicit output encoding
other than utf-8, and use the preprocessor instead of `sed | iconv`.

Differential Revision: https://phabricator.services.mozilla.com/D96013
2020-11-05 15:07:30 +00:00
Aaron Klotz 0a1730e26a Bug 1675118: Add a variant of mscom::AsyncInvoker that supports posting completion runnables; r=Jamie
I need this for some changes I want to make to Win32 file pickers.

* We add an event-driven variant to `mscom::AsyncInvoker`. When the async call
  invokes `ISynchronize::Signal`, we post an event to the specified event
  target (or implicitly to the main thread).
* For this to work, the async call needs to temporarily retain a reference to
  itself, otherwise the async call object is destroyed and the in-flight call
  is cancelled. This reference is stored in an "outer runnable" which is
  responsible for executing the inner completion runnable, and then dropping
  the self-reference.
* We only run the completion runnable upon *successful* initiation of the async
  call. If there was a failure, we return that code immediately to the caller.
  Failures also clear the reference to the completion runnable.
* If we could not obtain an async interface and must run synchronously, then
  we run the completion runnable immediately after a successful synchronous
  invocation.

Differential Revision: https://phabricator.services.mozilla.com/D95808
2020-11-05 18:59:12 +00:00
Aaron Klotz d6adf2ddf1 Bug 1674904: Part 3 - Replace dll reg code in mscom/oop/Handler with calls to mscom/oop/Module; r=Jamie
`Handler` should now delegate its registration to `Module`.

Differential Revision: https://phabricator.services.mozilla.com/D95608
2020-11-04 22:11:23 +00:00
Aaron Klotz 87fbdfd39e Bug 1674904: Part 2 - New dll registration code in mscom/oop/module; r=Jamie
We add new DLL registration code. This is a rather generic function that
permits the following:

* Registering multiple `CLSID`s for the same DLL;
* Registering an optional `AppID`. Registering an `AppID` allows us to use a
  `DllSurrogate` to host the DLL out-of-process using Windows' built-in
  `dllhost.exe`. I'll be using this feature in a future bug.
* Supporting all available threading modelsl;
* Capable of registering either inproc servers or inproc handlers;
* Using the transaction-based registry API so that we can cleanly rollback
  during registration if any part(s) of it fail.

Differential Revision: https://phabricator.services.mozilla.com/D95606
2020-11-04 21:49:46 +00:00
Aaron Klotz 99bc464a75 Bug 1674904: Part 1 - Change mscom registration to dynamically link to GetProxyDllInfo when built outside of xul; r=Jamie
We need this so that the registration code is more versatile and may be linked
from outside of xul.

Differential Revision: https://phabricator.services.mozilla.com/D95605
2020-11-04 21:49:28 +00:00
Aaron Klotz f53b856004 Bug 1675370: Mark /ipc/mscom as exclusive to Windows; r=firefox-build-system-reviewers,dmajor
Differential Revision: https://phabricator.services.mozilla.com/D95925
2020-11-04 21:40:04 +00:00
Dorel Luca e3198dde0a Backed out 4 changesets (bug 1674904) for Build bustage in worker/checkouts/gecko/config/rules.mk. CLOSED TREE
Backed out changeset 50576e0fbd98 (bug 1674904)
Backed out changeset b3b7d68c33f6 (bug 1674904)
Backed out changeset 660cdea23685 (bug 1674904)
Backed out changeset 7322c3af8006 (bug 1674904)
2020-11-04 23:20:51 +02:00
Aaron Klotz 5d88574f69 Bug 1674904: Part 3 - Replace dll reg code in mscom/oop/Handler with calls to mscom/oop/Module; r=Jamie
`Handler` should now delegate its registration to `Module`.

Differential Revision: https://phabricator.services.mozilla.com/D95608
2020-11-04 20:40:31 +00:00
Aaron Klotz a4a05e12e3 Bug 1674904: Part 2 - New dll registration code in mscom/oop/module; r=Jamie
We add new DLL registration code. This is a rather generic function that
permits the following:

* Registering multiple `CLSID`s for the same DLL;
* Registering an optional `AppID`. Registering an `AppID` allows us to use a
  `DllSurrogate` to host the DLL out-of-process using Windows' built-in
  `dllhost.exe`. I'll be using this feature in a future bug.
* Supporting all available threading modelsl;
* Capable of registering either inproc servers or inproc handlers;
* Using the transaction-based registry API so that we can cleanly rollback
  during registration if any part(s) of it fail.

Differential Revision: https://phabricator.services.mozilla.com/D95606
2020-11-04 20:46:30 +00:00
Aaron Klotz 08047a8d78 Bug 1674904: Part 1 - Change mscom registration to dynamically link to GetProxyDllInfo when built outside of xul; r=Jamie
We need this so that the registration code is more versatile and may be linked
from outside of xul.

Differential Revision: https://phabricator.services.mozilla.com/D95605
2020-11-04 20:39:57 +00:00
Jean-Yves Avenard c938c7416c Bug 1674043 - P6. Remove sync PDecoderMananger::Supports API. r=mattwoodrow,bryce,mjf,ipc-reviewers,nika
In bug 1595994 we attempted to streamline the ability to determine which decoder was available regardless of the process they would be running in. This was subsequently done via the PDMFactory.

As there are several JS API that can query which codec are supported, it requires a synchronous mechanism.
This allowed to make a determination during the PlatformDecoderModule::Supports call, depending on which process it was going to be called frome.

Having a synchronous IPC call to the RemoteDecoderManagerParent has too many caveats to be workable.
So what we do instead is first determine at launch if the required external framework are available and pass this information to each content process.

When checking if a decoder is available, we make a best guess at determining if the PDM would support such codec, without actually loading such framework when running in the content process.

Supports can no longer make a decision based on the process currently running and as such PDM::CreateAudio/VideoDecoder using an optional system framework now need to further check the validity of the CreateDecoderParam argument.

Differential Revision: https://phabricator.services.mozilla.com/D95245
2020-11-04 02:22:33 +00:00
Aaron Klotz fd31cffe8e Bug 1674902: Part 5 - mscom::ActivationContext cleanup; r=Jamie
I just wanted to add a better explanation for what the magic `2` constant
is for.

Differential Revision: https://phabricator.services.mozilla.com/D95602
2020-11-03 16:55:07 +00:00
Aaron Klotz 9f37ad4cb5 Bug 1674902: Part 4 - Some mscom::ApartmentRegion cleanup; r=Jamie
Just some additional annotations

Differential Revision: https://phabricator.services.mozilla.com/D95601
2020-11-03 16:55:21 +00:00
Aaron Klotz 4baff096be Bug 1674902: Part 3 - Add IsCurrentThreadNonMainMTA to mscom/Utils.h; r=Jamie
This is a new check that I'd like to use in some future patches.

Differential Revision: https://phabricator.services.mozilla.com/D95599
2020-11-03 16:55:21 +00:00
Aaron Klotz 362d7078a2 Bug 1674902: Part 2 - Use CLSID_NULL instead of a distinct null CLSID; r=Jamie
Just a quick patch to reference an existing zeroed-out GUID instead of
instantiating a new one.

Differential Revision: https://phabricator.services.mozilla.com/D95598
2020-11-03 16:54:50 +00:00
Aaron Klotz d6a168786b Bug 1674902: Part 1 - s/uint32_t/long/ for return codes in mscom/Utils.h; r=Jamie
`HRESULT` is `typedef`'d as `long`, so this patch harmonizes the return codes.

Differential Revision: https://phabricator.services.mozilla.com/D95597
2020-11-03 16:54:48 +00:00
Cristina Coroiu ae74e57f04 Backed out 6 changesets (bug 1674902) for build bustage on a CLOSED TREE
Backed out changeset e4f63ba14348 (bug 1674902)
Backed out changeset 9f6e1866a7c3 (bug 1674902)
Backed out changeset a71e810d79d0 (bug 1674902)
Backed out changeset 071d1d593deb (bug 1674902)
Backed out changeset e88b258d7013 (bug 1674902)
Backed out changeset d1f72c3f70a0 (bug 1674902)
2020-11-03 17:47:35 +02:00
Aaron Klotz 2852676254 Bug 1674902: Part 6 - mscom::ActivationContext cleanup; r=Jamie
I just wanted to add a better explanation for what the magic `2` constant
is for.

Differential Revision: https://phabricator.services.mozilla.com/D95602
2020-11-03 02:53:33 +00:00
Aaron Klotz a89d1612fa Bug 1674902: Part 5 - Some mscom::ApartmentRegion cleanup; r=Jamie
Just some additional annotations

Depends on D95600

Differential Revision: https://phabricator.services.mozilla.com/D95601
2020-11-03 02:50:21 +00:00
Aaron Klotz 331db9d8d2 Bug 1674902: Part 4 - mscom/Ptr.h cleanup; r=Jamie
Some cleanup in our smart pointer stuff: Using `move` semantics lets us avoid
needing to hack around our static analysis.

Depends on D95599

Differential Revision: https://phabricator.services.mozilla.com/D95600
2020-11-03 02:45:39 +00:00
Aaron Klotz 3b4cad3543 Bug 1674902: Part 3 - Add IsCurrentThreadNonMainMTA to mscom/Utils.h; r=Jamie
This is a new check that I'd like to use in some future patches.

Depends on D95598

Differential Revision: https://phabricator.services.mozilla.com/D95599
2020-11-03 02:35:51 +00:00
Aaron Klotz fb52f1b26c Bug 1674902: Part 2 - Use CLSID_NULL instead of a distinct null CLSID; r=Jamie
Just a quick patch to reference an existing zeroed-out GUID instead of
instantiating a new one.

Depends on D95597

Differential Revision: https://phabricator.services.mozilla.com/D95598
2020-11-03 02:11:13 +00:00
Aaron Klotz 8e3b8ba2bb Bug 1674902: Part 1 - s/uint32_t/long/ for return codes in mscom/Utils.h; r=Jamie
`HRESULT` is `typedef`'d as `long`, so this patch harmonizes the return codes.

Differential Revision: https://phabricator.services.mozilla.com/D95597
2020-11-03 02:09:17 +00:00
Ricky Stewart 02a7b4ebdf Bug 1654103: Standardize on Black for Python code in `mozilla-central`.
Allow-list all Python code in tree for use with the black linter, and re-format all code in-tree accordingly.

To produce this patch I did all of the following:

1. Make changes to tools/lint/black.yml to remove include: stanza and update list of source extensions.

2. Run ./mach lint --linter black --fix

3. Make some ad-hoc manual updates to python/mozbuild/mozbuild/test/configure/test_configure.py -- it has some hard-coded line numbers that the reformat breaks.

4. Make some ad-hoc manual updates to `testing/marionette/client/setup.py`, `testing/marionette/harness/setup.py`, and `testing/firefox-ui/harness/setup.py`, which have hard-coded regexes that break after the reformat.

5. Add a set of exclusions to black.yml. These will be deleted in a follow-up bug (1672023).

# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D94045
2020-10-26 18:34:53 +00:00
Nika Layzell db195fbaa4 Bug 1670557 - Check for open channel in NotifyImpendingShutdown, r=annyG
Differential Revision: https://phabricator.services.mozilla.com/D94598
2020-10-24 01:05:49 +00:00
Bogdan Tara da1098d4aa Backed out 10 changesets (bug 1654103, bug 1672023, bug 1518999) for PanZoomControllerTest.touchEventForResult gv-junit failures CLOSED TREE
Backed out changeset ff3fb0b4a512 (bug 1672023)
Backed out changeset e7834b600201 (bug 1654103)
Backed out changeset 807893ca8069 (bug 1518999)
Backed out changeset 13e6b92440e9 (bug 1518999)
Backed out changeset 8b2ac5a6c98a (bug 1518999)
Backed out changeset 575748295752 (bug 1518999)
Backed out changeset 65f07ce7b39b (bug 1518999)
Backed out changeset 4bb80556158d (bug 1518999)
Backed out changeset 8ac8461d7bd7 (bug 1518999)
Backed out changeset e8ba13ee17f5 (bug 1518999)
2020-10-24 03:36:18 +03:00
Ricky Stewart c0cea3b0fa Bug 1654103: Standardize on Black for Python code in `mozilla-central`. r=remote-protocol-reviewers,marionette-reviewers,webdriver-reviewers,perftest-reviewers,devtools-backward-compat-reviewers,jgilbert,preferences-reviewers,sylvestre,maja_zf,webcompat-reviewers,denschub,ntim,whimboo,sparky
Allow-list all Python code in tree for use with the black linter, and re-format all code in-tree accordingly.

To produce this patch I did all of the following:

1. Make changes to tools/lint/black.yml to remove include: stanza and update list of source extensions.

2. Run ./mach lint --linter black --fix

3. Make some ad-hoc manual updates to python/mozbuild/mozbuild/test/configure/test_configure.py -- it has some hard-coded line numbers that the reformat breaks.

4. Make some ad-hoc manual updates to `testing/marionette/client/setup.py`, `testing/marionette/harness/setup.py`, and `testing/firefox-ui/harness/setup.py`, which have hard-coded regexes that break after the reformat.

5. Add a set of exclusions to black.yml. These will be deleted in a follow-up bug (1672023).

# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D94045
2020-10-23 20:40:42 +00:00
Andrew Osmond bc0f206cd6 Bug 1670939 - Make PImageBridge::WillClose async instead of sync. r=nical,ipc-reviewers,jld
Differential Revision: https://phabricator.services.mozilla.com/D93343
2020-10-23 18:29:15 +00:00
Perry Jiang 0e70329c0d Bug 1653470 - refcount PServiceWorkerRegistration r=dom-workers-and-storage-reviewers,asuth
Depends on D83884

Differential Revision: https://phabricator.services.mozilla.com/D83885
2020-10-23 11:52:49 +00:00
Perry Jiang 260415ed7c Bug 1653470 - refcount PServiceWorkerContainer r=dom-workers-and-storage-reviewers,asuth
Depends on D83883

Differential Revision: https://phabricator.services.mozilla.com/D83884
2020-10-23 11:51:24 +00:00
Perry Jiang bad3dff4d7 Bug 1653470 - refcount PServiceWorker r=dom-workers-and-storage-reviewers,asuth
Differential Revision: https://phabricator.services.mozilla.com/D83883
2020-10-23 11:50:00 +00:00
Jed Davis cc6e7ab133 Bug 1440203 - Support memfd_create in IPC shared memory. r=glandium
This commit also allows `memfd_create` in the seccomp-bpf policy for all
process types.

`memfd_create` is an API added in Linux 3.17 (and adopted by FreeBSD
for the upcoming version 13) for creating anonymous shared memory
not connected to any filesystem.  Supporting it means that sandboxed
child processes on Linux can create shared memory directly instead of
messaging a broker, which is unavoidably slower, and it should avoid
the problems we'd been seeing with overly small `/dev/shm` in container
environments (which were causing serious problems for using Firefox for
automated testing of frontend projects).

`memfd_create` also introduces the related operation of file seals:
irrevocably preventing types of modifications to a file.  Unfortunately,
the most useful one, `F_SEAL_WRITE`, can't be relied on; see the large
comment in `SharedMemory:ReadOnlyCopy` for details.  So we still use
the applicable seals as defense in depth, but read-only copies are
implemented on Linux by using procfs (and see the comments on the
`ReadOnlyCopy` function in `shared_memory_posix.cc` for the subtleties
there).

There's also a FreeBSD implementation, using `cap_rights_limit` for
read-only copies, if the build host is new enough to have the
`memfd_create` function.

The support code for Android, which doesn't support shm_open and can't
use the memfd backend because of issues with its SELinux policy (see bug
1670277), has been reorganized to reflect that we'll always use its own
API, ashmem, in that case.

Differential Revision: https://phabricator.services.mozilla.com/D90605
2020-10-22 21:23:32 +00:00
Dorel Luca 1ff59cb7a3 Backed out changeset 7558c8821a07 (bug 1654103) for multiple failures. CLOSED TREE 2020-10-22 03:51:06 +03:00
Dorel Luca 5d3bd01bca Backed out 2 changesets (bug 1440203) for Backout conflicts with Bug 1654103. CLOSED TREE
Backed out changeset 6e44c037b2dc (bug 1440203)
Backed out changeset ab11665d8607 (bug 1440203)
2020-10-22 03:47:17 +03:00
Jed Davis 61a83c3467 Bug 1440203 - Support memfd_create in IPC shared memory. r=glandium
This commit also allows `memfd_create` in the seccomp-bpf policy for all
process types.

`memfd_create` is an API added in Linux 3.17 (and adopted by FreeBSD
for the upcoming version 13) for creating anonymous shared memory
not connected to any filesystem.  Supporting it means that sandboxed
child processes on Linux can create shared memory directly instead of
messaging a broker, which is unavoidably slower, and it should avoid
the problems we'd been seeing with overly small `/dev/shm` in container
environments (which were causing serious problems for using Firefox for
automated testing of frontend projects).

`memfd_create` also introduces the related operation of file seals:
irrevocably preventing types of modifications to a file.  Unfortunately,
the most useful one, `F_SEAL_WRITE`, can't be relied on; see the large
comment in `SharedMemory:ReadOnlyCopy` for details.  So we still use
the applicable seals as defense in depth, but read-only copies are
implemented on Linux by using procfs (and see the comments on the
`ReadOnlyCopy` function in `shared_memory_posix.cc` for the subtleties
there).

There's also a FreeBSD implementation, using `cap_rights_limit` for
read-only copies, if the build host is new enough to have the
`memfd_create` function.

The support code for Android, which doesn't support shm_open and can't
use the memfd backend because of issues with its SELinux policy (see bug
1670277), has been reorganized to reflect that we'll always use its own
API, ashmem, in that case.

Differential Revision: https://phabricator.services.mozilla.com/D90605
2020-10-21 23:34:46 +00:00
Ricky Stewart 50762dacab Bug 1654103: Standardize on Black for Python code in `mozilla-central`. r=remote-protocol-reviewers,marionette-reviewers,webdriver-reviewers,perftest-reviewers,devtools-backward-compat-reviewers,jgilbert,preferences-reviewers,sylvestre,maja_zf,webcompat-reviewers,denschub,ntim,whimboo,sparky
Allow-list all Python code in tree for use with the black linter, and re-format all code in-tree accordingly.

To produce this patch I did all of the following:

1. Make changes to tools/lint/black.yml to remove include: stanza and update list of source extensions.

2. Run ./mach lint --linter black --fix

3. Make some ad-hoc manual updates to python/mozbuild/mozbuild/test/configure/test_configure.py -- it has some hard-coded line numbers that the reformat breaks.

4. Add a set of exclusions to black.yml. These will be deleted in a follow-up bug (1672023).

# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D94045
2020-10-21 21:27:27 +00:00
Jean-Yves Avenard 47a23ae770 Bug 1595994 - P27. Remove redundant virtual keyword. r=mattwoodrow
Remove unnecessary virtual for method not used as such.

Depends on D93476

Differential Revision: https://phabricator.services.mozilla.com/D93709
2020-10-20 23:33:00 +00:00
Jean-Yves Avenard 6307ec0451 Bug 1595994 - P26. Simplify and rename RecvLaunchRDDProcess. r=mattwoodrow,nika,ipc-reviewers
And we remove unnecessary checks, BackgroundParent only run in the parent process and if e10s is on. Also RecvLauchRDDProcess will only ever be called if the rdd pref is on already.

By streamlining the call we also reduce the number of sync dispatch to 1.

Depends on D93317

Differential Revision: https://phabricator.services.mozilla.com/D93476
2020-10-20 23:32:57 +00:00
Jean-Yves Avenard d06384295b Bug 1595994 - P25. Have launch rdd be signalled over the PBackground channel. r=mattwoodrow,nika,ipc-reviewers
This remove the need for a sync dispatch to the main thread, that lead to deadlocks.

Depends on D93316

Differential Revision: https://phabricator.services.mozilla.com/D93317
2020-10-20 23:32:54 +00:00
Dan Glastonbury a70a2c09f1 Bug 1595994 - P7: Add Supports messages to PRemoteDecoderManager. r=kamidphish,nika,ipc-reviewers
Add a synchronous Supports message to the IPDL PRemoteDecoderManager protocol so
decoder modules can query for playback support in the actual process that will
attempt to do the decoding.

Depends on D54878

Differential Revision: https://phabricator.services.mozilla.com/D54879
2020-10-20 23:26:27 +00:00
Andrew McCreight 1425ce2012 Bug 1671577 - Use OtherPid() in AddProfilerMarker(). r=jld
Aside from its use in AddProfilerMarker(), after initialization mPeerPid
is only used on the IO thread, so the write to it does not hold the monitor.
This means that the read in AddProfilerMarker() can cause a race, even
though we hold the monitor. This method is only called when we hold
the monitor and everything is set up, so I think we can just use
mListener->OtherPid() to get the PID.

Differential Revision: https://phabricator.services.mozilla.com/D93810
2020-10-16 17:53:42 +00:00
Jed Davis 74dc0d9253 Bug 1609668 - Move 32k buffer in IPCStreamSource::DoRead to the heap to avoid stack overflow. r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D92524
2020-10-12 21:38:30 +00:00
Ricky Stewart 362abcf949 Bug 1670357 - Remove `make` targets for cleaning: `clean`, `realclean`, `clobber`, `distclean`, `clobber_all`, `everything` r=firefox-build-system-reviewers,mhentges
The `clobber` targets are superseded by `mach clobber`, so we don't need them for any reason. The `clean` target is meant to get you to a post-`configure` state, but it doesn't really work, and if it's necessary for you to be in that state for some reason you can just clobber and re-`configure`, so it doesn't seem worth it to get it working again. Instead, delete all of them. Also delete `everything` which is not useful when `clobber` doesn't exist.

Differential Revision: https://phabricator.services.mozilla.com/D93514
2020-10-15 20:37:18 +00:00
Chris Martin e2f2de6530 Bug 1657404 - Change PGamepadTestChannel to "refcounted protocol" r=handyman
Differential Revision: https://phabricator.services.mozilla.com/D93023
2020-10-14 20:33:55 +00:00
Chris Martin bcd28df3be Bug 1657404 - Prepare GamepadTestChannelChild for "refcounted protocol" r=handyman
Differential Revision: https://phabricator.services.mozilla.com/D93022
2020-10-14 20:33:32 +00:00
Chris Martin 54487648eb Bug 1657404 - Prepare GamepadTestChannelParent for "refcounted protocol" r=handyman
Differential Revision: https://phabricator.services.mozilla.com/D93021
2020-10-14 20:33:13 +00:00
Chris Martin eb0f286337 Bug 1657404 - Change PGamepadEventChannel to "refcounted protocol" r=handyman
Differential Revision: https://phabricator.services.mozilla.com/D93119
2020-10-14 15:58:36 +00:00
Tom Tung 45a97b5b83 Bug 1654080 - Use PBackground for syncing SessionStorageCache and use LSWriteOptimizer to send data changes; r=dom-workers-and-storage-reviewers,janv,nika
This patch does:
- Use LSWriteOptimizer
- Remove SessionStorageService since it's unused.
- Move IPC from PContent to PBackground
(by SessionStorageManager{Child, Parent} and SessionStorageCache{Child, Parent}).
- Extract SessionStorageManagerBase and add PBackgroundSessionStorageManager.
- Expose a getter function to get a BackgroundParentManager for top context id
on the parent.

IPC
- Before this patch:
  - Copy from parent while loading a document.
    - Mark cache entry on the parent process as loaded by the child id.
  - Update change on checkpoint.
  - Unmark cache entry on the parent process as unloaded for the child id while
  the parent actor is destorying.
- After this patch:
  - Sync IPC load in the first SessionStorage operation.
  - Update change on checkpoint

`BackgroundSessionStorageManager`'s lifecycle on the parent process.
- Create by `SessionStorageManagerParent` and register to the `sManagers`.
- Hold by `SessionStorageManagerParent` and `sManagers`.
- Remove from the `sManagers` while the corresponding `BrowsingContext` is
destructed (on the parent process).

Depends on D89341

Differential Revision: https://phabricator.services.mozilla.com/D89342
2020-10-14 00:19:33 +00:00
Cameron McCormack cff9802c01 Bug 1656114 - Part 2: Add mozilla::BitSet. r=froydnj
Adding this to be used when the bit set needs to be sent across IPC.

Differential Revision: https://phabricator.services.mozilla.com/D87186
2020-10-11 22:03:33 +00:00