This patch adds an option for GeckoView to change site settings outside
of the session. These APIs should be used for global modifications to
the "never translate these sites" list.
Additionally, this patch moves some Desktop translations logic to the
toolkit for shared use.
Differential Revision: https://phabricator.services.mozilla.com/D195790
The individual test ran as expected when prefs was next to the file.
But when the whole directory is selected, the test runner refuses to
run the test due to the following error:
> The 'prefs' key must be set in the DEFAULT section of a manifest.
This patch fixes the issue by moving prefs to DEFAULT. This is okay
because the other test in the test manifest is independent of the pref.
Differential Revision: https://phabricator.services.mozilla.com/D196295
This is expected to be present in ffmpeg, but is only for displaying things on
the command-line, we don't need a "real" implementation.
Differential Revision: https://phabricator.services.mozilla.com/D196062
Running `generate_source_mozbuild.py` needs to be done with a specific version
of pyparsing, this can be done with a virtualenv, like so:
```
cd media/libaom
python3 -m venv temp
. temp/bin/activate
pip install pyparsing==2.4.7
./generate_sources_mozbuild.sh # this runs generate_source_mozbuild.py
```
Differential Revision: https://phabricator.services.mozilla.com/D196060
Override Adwaita / Yaru colors with colors from the libadwaita
documentation.
Do a couple minor tweaks to the urlbar too to match both our default
themes in other platforms and Adwaita.
Differential Revision: https://phabricator.services.mozilla.com/D196153
This patch disables the mozperftest http3 test, because of some failures with xpcshell, and/or the mozperftest-xpcshell integration.
Differential Revision: https://phabricator.services.mozilla.com/D196175
After discarding IC stubs, we would no longer support trial inlining, resulting
in potential performance cliffs.
With this patch we try to reset as much state as possible. The main exception is
that we preserve trial inlining data for call sites if the callee is active
on the stack and running in Baseline. In this case we also clone the IC stubs
for the call site.
For all other ICs we now reset the ICState and we also purge inactive inlined
ICScripts.
Differential Revision: https://phabricator.services.mozilla.com/D196173
The active flag is currently set on the JitScript, but the next patch will also
use this to mark trial-inlined ICScripts that are on the stack. We can use this to
preserve those trial-inlined scripts and discard the rest.
To properly discard the trial-inlined ICScripts we also need to know the bytecode size
of the script, to update `InliningRoot::totalBytecodeSize_`, so this patch also adds
this to the IC script.
Differential Revision: https://phabricator.services.mozilla.com/D196172
By Bug 1858361 fix, first WebGPU rendering becomes not rendered. It happens because CanvasContext::MaybeQueueSwapChainPresent() is called before CanvasContext::InitializeCanvasRenderer().
The change handles it.
Differential Revision: https://phabricator.services.mozilla.com/D196253
We are seeing crashes on the european Samsung S22 family of devices in
eglTerminate after updating to Android 14. To work around this we
deliberately leak the EGLDisplay on affected devices. In practice we
only ever use the default EGLDisplay on Android, and calling
eglInitialize multiple times is allowed, so this is fine.
Note this only occurs when running webgl in the content process, which
will occur naturally following enough GPU process crashes that we
disable the GPU process. When webgl is running in the GPU process
webrender keeps the EGLDisplay alive, meaning we never terminate it.
Differential Revision: https://phabricator.services.mozilla.com/D196146
The [CompareIntervals::LessThan](https://searchfox.org/mozilla-central/rev/da48f565f70a57ac28862090828fbaa7fd8556f6/dom/media/Intervals.h#738) is not symmetric due to the `mFuzz`, leading to interesting side effects:
```
bool LessThan(const ElemType& aT1, const ElemType& aT2) const {
return aT1.mStart - aT1.mFuzz < aT2.mStart + aT2.mFuzz;
}
```
means
```
if (aT.mFuzz > 0) aT < aT // instead of aT == aT
if (aT.mFuzz < 0) aT > aT // instead of aT == aT
aT1.mStart := 1
aT1.mFuzz := 2
aT2.mStart := 2
aT2.mFuzz := 2
aT1 < aT2 && aT2 < aT1 // not symmetric
```
which makes `std::sort` angry. I assume this comparator did already cause weird effects with `NS_QuickSort` that were apparently less obvious.
Differential Revision: https://phabricator.services.mozilla.com/D196266
The AllocSite::hasScript method was broken by the wasm GC changes. This should
return false when the script pointer is null too.
The only thing this actually affects is the output when JS_GC_REPORT_PRETENURE
is set, since we don't otherwise call it when the script pointer is null.
While we're here, add a header line to this output to help understand it.
Differential Revision: https://phabricator.services.mozilla.com/D195765
When using semispace collection this will allow us to add store buffer entries
to a new empty storebuffer associated with to space while tracing the previous
store buffer associated with from space.
Differential Revision: https://phabricator.services.mozilla.com/D195541