When the macOS osclientcerts backend looks for issuer certificates, it can
result in network I/O unless it is specifically disabled. The Windows backend
already handles this, so this only applies to macOS.
Differential Revision: https://phabricator.services.mozilla.com/D85799
Otherwise when we try to call Deactivate on the direct manipulation manager (to balance the Activate call) we won't have the HWND pointer and so it won't balance and we will leak.
We call DestroyDirectManipulation in nsWindow::Destroy but it looks like nsWindow::OnDestroy can be called before nsWindow::Destroy.
Differential Revision: https://phabricator.services.mozilla.com/D85835
Pathological regexps can overflow the stack just from recursively walking the AST during compilation. One way to avoid this is by checking the AST ahead of time to make sure it is not too deep. This occurs on 32-bit and in some configurations on 64-bit.
The visitor API for RegExpTree is sad and full of `void*` spiders, but I don't think it's worth upstreaming a patch to make it nicer.
Note that this is not a complete fix. If the stack is already close to overflowing, then even a relatively shallow regexp might overflow. However:
1. While the code that walks the AST doesn't check for stack overflow, the parser code that creates the AST does. The parser does not recurse as deeply, which is why we can end up in this situation, but many overflow cases will fail cleanly during parsing instead of crashing while walking the AST.
2. This is becoming a fuzzblocker on arm64 (see bug 1655404), so even a partial fix is better than none.
Differential Revision: https://phabricator.services.mozilla.com/D79182
This header may have used `mozilla/TemplateLib.h` at sometime in the distant
past, but it doesn't anymore; let's use the correct header instead.
Differential Revision: https://phabricator.services.mozilla.com/D85775
This will let people get information about the process more easily.
remoteType can't be infallible because it is a ACString.
Differential Revision: https://phabricator.services.mozilla.com/D85776
For all fission web-platform tests currently running on mozilla-central as tier 2,
promote to tier 1 and run on all trunk trees.
Differential Revision: https://phabricator.services.mozilla.com/D85512
When a window is maximized/zoomed, and then moved, we should stop treating it
as maximized/zoomed. Likewise, if the window is moved back to being zoomed/
maximized, we should also update our bookkeeping. Updating the internal
mSizemode will fire the right events and cause window.windowState to return
the correct result when JS interrogates it.
Differential Revision: https://phabricator.services.mozilla.com/D85884
Out-of-process WebGL needs GfxInfo to exist in the composition
process (which is the GPU process if it exists and the parent process
otherwise). This patch enables the Linux version of that component in
the GPU process; the IPC currently used to give content processes copies
of the parent's GPU info is extended to also send it to the GPU process.
Differential Revision: https://phabricator.services.mozilla.com/D85443
Chrome's SDP parser has problems with an ssrc-group being present if the media
section is inactive and does not have an msid.
Differential Revision: https://phabricator.services.mozilla.com/D85320
Makes `addException` more reusable in the form that can be used with exceptions objects that have different properties than a `resource` object from the `resourceWatcher`.
Fixes a typo in `Exception.js`.
Fixes incorrectly set property `sourceId` in `addEditorExceptionLine()` in `Exception.js`.
Differential Revision: https://phabricator.services.mozilla.com/D78883
Asserting that features with gates are always disabled seems unnecessary,
and forces changes to the test every time a feature is enabled by default.
Differential Revision: https://phabricator.services.mozilla.com/D85433
The issue here is that AccessibleCaret flushes layout from the middle of
the SetValue call, because it hides the caret (see the call stack in
comment 11).
That changes the placeholder-shown state because it goes from empty to
non-empty but the SetValue call from UnbindFromFrame is not supposed to
change that state (because we're in the middle of restyling).
Call OnValueChanged later, at the outer caller instead.
Differential Revision: https://phabricator.services.mozilla.com/D85745
While at it, properly CC the printer classes, as they're going to hold
promises and it's very easy to introduce leaks otherwise.
Co-Authored-By: Jonathan Watt <jwatt@jwatt.org>
Differential Revision: https://phabricator.services.mozilla.com/D85791