Before match indices, all match results had the same shape. (If there are
no named capture groups, `.groups` exists but is undefined.) Match results
with `.indices` have a distinct shape, so we need a distinct template
object. We also need a template object for `.indices` itself.
The logic should be equivalent when frame IDs on aImages are contiguously
increasing from IDs on previously set frames.
There are currently no callers passing empty aImages, but the logic in this
case would now be as described in the documentation of
UpdatePrincipalHandleForFrameID():
> We will notify mElement that aPrincipalHandle has been applied when all
> FrameIDs prior to aFrameID have been flushed out.
However, `-moz-outline-radius` should still override any `border-radius`.
This is primarily done for backward compatibility with some themes.
Additionally, it also allows for more advanced outline control than the CSS spec provides, without breaking spec.
Finally, if the spec is ever updated to include `outline-radius`, we'll be ready to drop the `-moz-` prefix!
Note: BZ 315209 has an inadvertent double-negative in nsDisplayList.cpp:
HasRadius() essentially returns the opposite value it should.
We normally ask for confirmation before asking the operating system to
find an application to handle a scheme that the browser does not support.
It did not ask before doing so for the Usenet-related schemes news: snews:
and nntp:. Since most operating systems in 2024 don't have a trusted
newsreader installed by default, an unscrupulous program that the user
downloaded could register itself as a handler.
The website that served the application download could then launch that
application at will. Of course, all bets are off if a user runs such a
program to begin with, but in some situations (looking at you, MacOS!)
just downloading/unpacking could already result in registration as a
protocol handler without the user actually executing anything.
These functions are only ELF ABI specific, not really OS specific.
Add powerpc, powerpc64 and sparc64 support for NetBSD
by using the same code as other ELF systems do.
On such platforms, remapping memory that was once writable
to executable is forbidden unless the initial mmap() is declared
to change in such a way using the PROT_MPROTECT macro.
This adds special-case #! comment handling at the top level, treating
any hashbang line as a single-line comment in the parser.
This only applies to Eval(), module script or global context.
This changes the way the extended attribute [LenientFloat] behaves, so
that overloading functions can match extended attributes while not
having restricted float type arguments themselves.
We already had part of the plumbing for other canvas manipulations, so
this is somewhat simplified.
This excludes the interface as that is breaking the build at this stage.
Some more research is required.