Calling AllowToClose in OnChannelClose/OnChannelError is tricky because we can
only do it either before or after calling
PFileSystemManagerParent::OnChannelClose/OnChannelError. When we call it before,
it can happen that mDataManager is already null when a subprotocol tries to use in its ActorDestroy (destruction of subprotocols is triggered by calling
PFileSystemManagerParent::OnChannelClose/OnChannelError). Calling AllowToClose
after calling PFileSystemManagerParent::OnChannelClose/OnChannelError makes no
sense because the object is deleted at that point.
The solution is to override ActorDestroy instead of overriding
OnChannelClose/OnChannelError. When ActorDestroy is called all subprotocols are
already destroyed but the object itself hasn't been deleted yet.
Differential Revision: https://phabricator.services.mozilla.com/D162825
CLDR 42 replaced plain ASCII space U+0020 with U+202F when formatting dates.
This change requires to update the expected results for more tests than usual.
Differential Revision: https://phabricator.services.mozilla.com/D160189
CLDR 42 replaced plain ASCII space U+0020 with U+202F when formatting dates.
For backward-compatibility reasons we want to ensure that
`Date.parse(date.toLocaleString())` works when the default locale is English,
therefore we have to normalise U+202F to U+0020.
Differential Revision: https://phabricator.services.mozilla.com/D160188
Remove the patch for bug 1766220 because the local patch was just a backport
from the ICU development branch.
And update the local patches for Sorbian and WASI integration to apply cleanly
on ICU 72.
Differential Revision: https://phabricator.services.mozilla.com/D160179
This fixes the snap layouts feature on Windows 11.
Instead of using a content attribute (which is somewhat expensive to
look up) use the default appearance and do this where we deal with other
appearance hacks (before building themed backgrounds).
Consolidate this inside a DealWithWindowsAppearanceHacks function along
with the glass stuff.
Differential Revision: https://phabricator.services.mozilla.com/D162757
There are 2 folds to this patch.
First, the `SitePermsAddonInstalling` was calling its parent constructor (`SitePermsAddonWrapper`),
without the expected permissions parameter. This would then lead to the `uninstall`
method to not do anything as there were no permissions.
This is fixed by passing the permission for which we want to install the addon.
Second, if multiple addons were installed for the same origin (e.g. "midi" and "midi-sysex")
while about:addons was open, removing the addon would only revoke the "first" permission,
as `SitePermsAddonInstalling` only holds one permission.
To fix this, we define an `SitePermsAddonInstalling#uninstall` method that checks
if we registered a `SitePermsAddonWrapper` instance for this origin, and in such
case, uninstall the addon from this instance instead of the `SitePermsAddonInstalling`,
one, as the `SitePermsAddonWrapper` instance has the whole set of permissions
granted for a given origin.
Test cases are added to ensure we don't regress this.
Differential Revision: https://phabricator.services.mozilla.com/D162431
CLDR 42 replaced plain ASCII space U+0020 with U+202F when formatting dates.
This change requires to update the expected results for more tests than usual.
Differential Revision: https://phabricator.services.mozilla.com/D160189
CLDR 42 replaced plain ASCII space U+0020 with U+202F when formatting dates.
For backward-compatibility reasons we want to ensure that
`Date.parse(date.toLocaleString())` works when the default locale is English,
therefore we have to normalise U+202F to U+0020.
Differential Revision: https://phabricator.services.mozilla.com/D160188
Remove the patch for bug 1766220 because the local patch was just a backport
from the ICU development branch.
And update the local patches for Sorbian and WASI integration to apply cleanly
on ICU 72.
Differential Revision: https://phabricator.services.mozilla.com/D160179
`AutoAvailableFloatRegister` contains a better comment which float registers are
available in Baseline resp. Ion, so we can remove these copied comments.
Differential Revision: https://phabricator.services.mozilla.com/D162738
Instead of saving all volatile registers, only save the live volatile registers
when calling `initTypedArraySlots()`. And additionally don't save more temp
registers in `initTypedArraySlots()` itself.
Depends on D162736
Differential Revision: https://phabricator.services.mozilla.com/D162737