Before, all `nsIContentSerializer::Append`* methods took an output
string. The state of `nsPlainTextSerializer` depended on the string
pointing to the same object.
Now, it's ensured that the same output string is used between
`nsIContentSerializer::Init` and `nsIContentSerializer::Finish`.
Moreover, `nsHTMLCopyEncoder::EncodeToStringWithContext` re-used
`mSerializer` without initializing it again. This was error-prone,
because after serializing with `mSerializer`, it's internal state might
have changed to an undesirable one (e.g.
`nsPlainTextSerializer::mWrapColumn` could've been modified).
Hence, it is now initialized again before serializing the common
ancestors.
Differential Revision: https://phabricator.services.mozilla.com/D43613
--HG--
extra : moz-landing-system : lando
The main motivation here is to get these subsections out of the main index.
While changing the heading to an 'h2' or lower would suffice, I opted to remove
them entirely. I did this because the links in this section is for the overall
global documentation. E.g, the "Indices and tables" section under /tools/lint,
has nothing to do with linting.
It is still possible to access the index and search page from the root:
https://firefox-source-docs.mozilla.org/#indices-and-tables
Differential Revision: https://phabricator.services.mozilla.com/D43653
--HG--
extra : moz-landing-system : lando
The Rust get_if_addrs library previously used does not build on Android with
our build system. Since we're already using nICEr to determine the local
interface addresses, rather than fix the Rust library, we can use those
addresses to set the interface on which mdns_service listens.
Differential Revision: https://phabricator.services.mozilla.com/D42760
--HG--
extra : moz-landing-system : lando
Checking this assertion outside of the if statement can result in
a use-after-free in debug builds.
Differential Revision: https://phabricator.services.mozilla.com/D42152
--HG--
extra : moz-landing-system : lando
The current code causes one mDNS service to be created for each PeerConnection.
Due to Bug 1569311, the services persist until shutdown, which can lead to a
lot of mDNS threads running on sites which use WebRTC for fingerprinting. This
change makes it so we start at most one mDNS service.
I've filed Bug 1569955 to look at shutting down the mDNS service after the
last hostname is unregistered. As an alternative, if we fix Bug 1569311, we
could also use refcounting and stop the mDNS service after the last
StunAddrsRequestParent is freed.
Differential Revision: https://phabricator.services.mozilla.com/D42151
--HG--
extra : moz-landing-system : lando
With the move to the socket process, the UUID service is no longer available
in nricectx. This adds a pair of helper functions to mdns_service to generate
UUIDs and uses them to generate hostnames inside nricectx.
Differential Revision: https://phabricator.services.mozilla.com/D42150
--HG--
extra : moz-landing-system : lando
This only enables mDNS on OS X for now. Some versions of Windows lack mDNS
support, there are some oddities with resolving IPv6 addresses on Linux, and
Android has not yet been tested. All of these will be addressed in follow on
bugs.
Differential Revision: https://phabricator.services.mozilla.com/D38496
--HG--
extra : moz-landing-system : lando
This adds a mdns_service to mtransport to handle responding to mDNS queries.
All hostnames will be generated from UUIDs, so the responder assumes that it
is the only responder for a hostname which is registered with it. Because of
this, the responder does not first make a DNS query itself to see if any other
responder is handling a hostname, and does not wait a random amount of time
before replying, both of which are required by the specification to avoid
collisions with other responders.
Differential Revision: https://phabricator.services.mozilla.com/D38489
--HG--
extra : moz-landing-system : lando
This removes these functions: bind, getaddrinfo, recvfrom, sendto, setsockopt,
socket from the check_networking test to allow for their use by the Rust mDNS
responder.
Differential Revision: https://phabricator.services.mozilla.com/D38488
--HG--
extra : moz-landing-system : lando
The function called in these tests of course does the wrong thing, but these
tests aren't testing anything related to anti-tracking, so it is probably
harmless to leave this code in until the dependencies described in the comments
in the patch are in place.
Differential Revision: https://phabricator.services.mozilla.com/D43465
--HG--
extra : moz-landing-system : lando
For popup windows with parent we need to get scale factor of the parent
window. Because when the windows are hidden they're not receiving updates
about changing scaling factor. So when moving from normal dpi to
the hidpi monitor the newly opened popup windows will have the same scale
Differential Revision: https://phabricator.services.mozilla.com/D41947
--HG--
extra : moz-landing-system : lando
The onboarding UI is displayed on top of the Editor.
A dismiss button hides it forever (this is handled via
a pref that is set to false when clicking the button).
We take this as an opportunity to polish the Editor UI/wording
a bit.
Differential Revision: https://phabricator.services.mozilla.com/D43621
--HG--
rename : devtools/client/debugger/images/resume.svg => devtools/client/themes/images/webconsole/run.svg
extra : moz-landing-system : lando
Quite oddly, this is only busting ccov builds... I'm mildly curious about why,
but also not really.
MANUAL PUSH: This bug busted ccov builds which only land on central.
Previously, we were simply having a flag on the ContentProcessConnector
that we would flip once we loaded the content process server startup script.
This was working fine until multi-proxy browser console.
Each time we open the Browser Console, we create a new loader in a new
compartment. Which means in the end we'll have a new ContentProcessConnector
instance, and the flag would be resetted, and thus we would load a new
content process server startup script, which finally, would emit some
packet twice, and thus would break how we manage new packet in the client.
This patch fixes that by replacing the flag by checking if the script
was already loaded.
Differential Revision: https://phabricator.services.mozilla.com/D43618
--HG--
extra : moz-landing-system : lando