Commit graph

814917 commits

Author SHA1 Message Date
Andrew McCreight
cbfad78f92 Bug 1793227, part 9 - Automated fixes for js/xpconnect/tests/browser/. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D158508
2022-10-10 22:22:02 +00:00
Andrew McCreight
1e9cfa44fc Bug 1793227, part 8 - Manual eslint fixes for js/xpconnect/tests/browser/. r=kmag
browser_exception_leak.js is intentionally creating a leak, so maybe the unused
doc is intentional.

browser_import_mapped_jsm.js is deliberately testing the behavior of Cu.import,
so ignore the failure there.

Differential Revision: https://phabricator.services.mozilla.com/D158507
2022-10-10 22:22:02 +00:00
Andrew McCreight
6667e48501 Bug 1793227, part 7 - Manual fixes for XPCOMUtils.sys.mjs. r=kmag
One place was missing an explicit return.

The eslint-disable-next-line is needed because the analysis doesn't
seem to understand the non-static string.

The return was split into a separate line because that made eslint
complain that we needed to be consistent about returns, though
the return type of defineModuleGetter is undefined.

Finally, I updated the ChromeUtils.import() calls so they weren't using
the deprecated argument.

Differential Revision: https://phabricator.services.mozilla.com/D158506
2022-10-10 22:22:02 +00:00
Andrew McCreight
c41c392332 Bug 1793227, part 6 - Automated fixes for XPCOMUtils.sys.mjs. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D158505
2022-10-10 22:22:01 +00:00
Andrew McCreight
5aaf8f6590 Bug 1793227, part 5 - Clean up some named function cruft in XPCOMUtils.sys.mjs. r=kmag
This used to be needed to improve the debugging information, but isn't any more.

I fixed up the whitespace at the same time to match what the automated formatter
would have done in the next patch, to reduce gratuitous churn.

Differential Revision: https://phabricator.services.mozilla.com/D158970
2022-10-10 22:22:00 +00:00
Andrew McCreight
5ca7bf0e94 Bug 1793227, part 4 - Manual eslint fixes for js/xpconnect/tests/chrome. r=kmag
I removed test_bug596580.xhtml because it is testing JS versioning for
the subscript loader, which is long gone.

This adds XPCNativeWrapper as a valid global object. It is already allowed
for the other two kinds of mochitests.

Differential Revision: https://phabricator.services.mozilla.com/D158504
2022-10-10 22:22:00 +00:00
Andrew McCreight
d8c43d0ea1 Bug 1793227, part 3 - Automatic fixes for js/xpconnect/tests/chrome. r=kmag
Also change .eslintignore to cover the other directories.

This also fixes the indentation the automatic fixer messed up in a few XHTML files.

Differential Revision: https://phabricator.services.mozilla.com/D158503
2022-10-10 22:22:00 +00:00
Andrew McCreight
a2486eeeb0 Bug 1793227, part 2 - Manually convert some http:// URLs to https:// in chrome XPConnect tests. r=kmag
The eslint autofixer makes URLs that appear in strings in JS into https://
URLs. However, it does not change any URLs in the HTML part of the tests, which
caused some tests to fail. To try to ensure that the autofixer didn't break
tests in any way that doesn't show up as a failure, I did a light audit of the
tests. Specifically, I looked at files in js/xpconnect/tests/chrome/ containing
the string "example." in a URL string in more than one place. I switched these
URLs over to https://, both in JS and HTML.

I left alone test_secureContexts.html, which uses an http:// URL in HTML, but
is clearly trying to test http://.

I did a similar check for mochi.test but there weren't any tests that used it
more than once.

The tests that originally were broken by the autofix were:
  * test_evalInWindow.xhtml
  * test_expandosharing.xhtml
  * test_wrappers.xhtml
  * test_xrayic.xhtml

My audit didn't find any other instances that looked like they might fail. I
did fix a few other places, but I think in those cases the HTML and JS URLs were
cross origin anyways so it shouldn't really matter if one is https:// and the
other is http://.

I also changed single quotes to double quotes for the URLs I changed, because
the autofix is going to do that anyways.

Differential Revision: https://phabricator.services.mozilla.com/D158502
2022-10-10 22:21:59 +00:00
Andrew McCreight
b9091631a4 Bug 1793227, part 1 - Disable generated QI errors in two places. r=kmag
Disable this so the autofix doesn't erroneously change them.

Differential Revision: https://phabricator.services.mozilla.com/D158501
2022-10-10 22:21:59 +00:00
Robert Longson
61f0b7afb7 Bug 1696505 - stop SVG text reflows triggering other reflows r=jwatt
Differential Revision: https://phabricator.services.mozilla.com/D158912
2022-10-10 21:30:38 +00:00
Henrik Skupin
96027ba774 Bug 1563251 - [wdspec] Remove multiple expectation status for webdriver/tests/get_window_rect/get.py | test_payload. r=webdriver-reviewers,jdescottes
Differential Revision: https://phabricator.services.mozilla.com/D158639
2022-10-10 20:42:57 +00:00
alwu
e45556582d Bug 1791892 - part8: add MOZ_COUNT_CTOR/MOZ_COUNT_DTOR to track leaking. r=jolin
Adding these marcos would allow the bloatview show the leaking class
information [1].

[1] https://searchfox.org/mozilla-central/rev/d45dd05bf412e7468b3770a52519e9d546d6325c/docs/performance/memory/bloatview.md#74-82

Depends on D158386

Differential Revision: https://phabricator.services.mozilla.com/D158434
2022-10-10 20:13:31 +00:00
alwu
b30bf6accf Bug 1791892 - part7 : shutdown gfxconfig and device manager, and use mKind to avoid leaking. r=jolin,gerard-majax
We didn't close gfxconfig and the device manager properly before, which
causes a leak.

Also, using `mKind` to store the kind in the beginning helps us not need
to call `UtilityProcessChild::GetSingleton()` again to check the type,
which would also cause leaking and that would be addressed in bug 1792952.

Depends on D158072

Differential Revision: https://phabricator.services.mozilla.com/D158386
2022-10-10 20:13:31 +00:00
alwu
105fb88ef1 Bug 1791892 - part6 : run some media source's method on the manager thread to avoid the deadlock. r=jolin
This patch moves some media source's methods to the manager thread to
avoid deadlock. Eg. in previous threading model, media source calls the
engine stream's `NotifyEndOfStream()` and requires a lock. But inside
that function, it would check media source's state, which also requires
a lock. So the deadlock happened.

Now we want to make the media source run most of its methods on either
the manager thread, or the mf thread pool. We leave the task queue for
the media engine streams.

In addition, we also remove the `IsEnded()` method from the engine
stream's public interface to avoid completed accessing across threads.
Now the media source will only rely on the engine stream's ended event.

If the source gets started again after the streams are ended, we
guarantee that streams will send corresponding ended events again in
order to let the media engine know the playback end.

Depends on D157992

Differential Revision: https://phabricator.services.mozilla.com/D158072
2022-10-10 20:13:31 +00:00
alwu
601a1e5214 Bug 1791892 - part5 : check if the source is shutdowned or not to avoid racing between the manager thread and the task queue. r=jolin
One case I discovered is that

- call MFMediaSource::NotifyEndOfStream() on the manager thread (it dispatches a task to task queue)
- call MFMediaSource::Shutdown on the manager thread

Then when `MFMediaSource::NotifyEndOfStreamInternal` is running on the
task queue, the stream we're accessing might be released in the shutdown
process on the manager thread, which causes the access-violation.

Depends on D157991

Differential Revision: https://phabricator.services.mozilla.com/D157992
2022-10-10 20:13:30 +00:00
alwu
5d32b4e238 Bug 1791892 - part4 : reject init promise when shutdown. r=jolin
Depends on D157884

Differential Revision: https://phabricator.services.mozilla.com/D157991
2022-10-10 20:13:30 +00:00
alwu
d57ad742bf Bug 1791892 - part3 : use GetDroppedSinkFrames() when accumulating the statistic data from the media engine. r=jolin
When accumulating statistic data from the media engine. we guarantee the
data increases monotonically [1]. It's incorrect to use `GetDroppedFrames()`
because it could include other stages data which are not controlled by
the media engine, and causes the incorrect result.

Each stage of dropped frame should be calculated separately.

Eg. media engine doesn't drop any frame (0), but the format reader drops
1 decoded frame, which results in accumulating (0 - 1) frame to `mFrameStats`.

[1] https://searchfox.org/mozilla-central/rev/52da19becaa3805e7f64088e91e9dade7dec43c8/dom/media/ipc/MFMediaEngineParent.cpp#549-560

Depends on D157883

Differential Revision: https://phabricator.services.mozilla.com/D157884
2022-10-10 20:13:29 +00:00
alwu
3df1df1f5f Bug 1791892 - part2 : use mutex to prevent crashes. r=jolin
Using mutex can solve the following issues.

1. Racing between `MFMediaSource::Shutdown()` and other media source's functions running on the mf thread pool.

I originally thought the media engine would call media source's shutdown
on the mf thread pool, but I was wrong. The media engine would call that
method on the thread where we called the media engine's function.

Therefore, when we call `mediaEngine->shutdown()` on the manager thread,
it would also trigger the source's shutdown on the same thread. There
are also some other sources' methods would be executed on the manager
thread by this kind of calls as well.

This situation causes a race, we're shutting down the media stream on
the manager thread, and are still using them on the mf thread pool.

2. Media stream doesn't rely pending media engine's sample request properly

In [1], after a stream starts, it would check if there is any pending
request we need to reply. And that will check this condition [2] to
determine if we should do that.

That is a racing as well. Because at the time the stream checks the
source's state, the source might be still running media source's start
function and haven't changed its status [3] yet. That causes stream not
to reply on pending requests and we also don't have other chances to
reply that, resulting in the playback stalled.

[1] https://searchfox.org/mozilla-central/rev/52da19becaa3805e7f64088e91e9dade7dec43c8/dom/media/platforms/wmf/MFMediaEngineStream.cpp#183-185
[2] https://searchfox.org/mozilla-central/rev/52da19becaa3805e7f64088e91e9dade7dec43c8/dom/media/platforms/wmf/MFMediaEngineStream.cpp#314-317
[3] https://searchfox.org/mozilla-central/rev/52da19becaa3805e7f64088e91e9dade7dec43c8/dom/media/platforms/wmf/MFMediaSource.cpp#194

Depends on D157882

Differential Revision: https://phabricator.services.mozilla.com/D157883
2022-10-10 20:13:29 +00:00
alwu
5f8691e989 Bug 1791892 - part1 : return nullptr for the stream request if the media source has been shutdowned. r=jolin
Differential Revision: https://phabricator.services.mozilla.com/D157882
2022-10-10 20:13:29 +00:00
Brad Werth
8b03fbf5a0 Bug 1765187 Part 2: Make macOS video decoder recognize and use color primaries. r=media-playback-reviewers,jgilbert,alwu
Differential Revision: https://phabricator.services.mozilla.com/D156587
2022-10-10 20:12:59 +00:00
Brad Werth
949fa28f4f Bug 1765187 Part 1: Track color primaries independently from coefficients. r=media-playback-reviewers,jgilbert,alwu
This patch attempts to read color primary information from platform
agnostic decoders. It doesn't use any of this information to change how
the video frame is displayed.

It also cleans up some VPX transfer characteristics, to ensure they are
actually retrieved from the codec information, when available.

Differential Revision: https://phabricator.services.mozilla.com/D156362
2022-10-10 20:12:58 +00:00
Iulian Moraru
bdb516e93f Backed out changeset d2d7ad3741c8 (bug 1792414) for causing wpt failures on video-aspect-ratio.html. CLOSED TREE 2022-10-10 23:39:01 +03:00
Iulian Moraru
2fbc819c7a Backed out changeset 822f257fe870 (bug 1762078) for causing wpt failures related to service workers. 2022-10-10 23:38:03 +03:00
Shane Hughes
ffdfe5010d Bug 1788702 - Reduce feature callout test zoom factor. r=mviar
Differential Revision: https://phabricator.services.mozilla.com/D158921
2022-10-10 19:58:22 +00:00
Calixte
c41a5c693c Bug 1794372 - Update pdf.js to new version 348665934e195a7d7af7f09ecfe26cbc7f2f9751 r=pdfjs-reviewers,marco
Differential Revision: https://phabricator.services.mozilla.com/D158934
2022-10-10 19:56:39 +00:00
Niklas Baumgardner
813ecc17a7 Bug 1791624 - Fix Fluent errors in Screenshots component. r=sfoster
Differential Revision: https://phabricator.services.mozilla.com/D158515
2022-10-10 19:52:36 +00:00
Lee Salzman
cfb26bdf6f Bug 1792527 - Explicitly bind mip filter for external textures inside WebRender. r=gw
If an external image shows up multiple times while using a different image rendering
setting on each instance, we can erroneously call handler.lock() for each instance in
parallel, thus defaulting to the last image rendering setting supplied for all instances
in that batch.

To work around this, we get rid of the concept of having RenderTextureHosts maintain and
set the image rendering state, which results in a nice simplification. Then, when we go
to actually bind an external image inside WebRender, we set the image rendering state
at that point, so that regardless of how many instances of an external image are locked
simultaneously, we always use the correct image rendering setting for a batch.

Differential Revision: https://phabricator.services.mozilla.com/D158920
2022-10-10 19:23:51 +00:00
Emilio Cobos Álvarez
3c497e61a5 Bug 1792414 - Tweak video aspect-ratio behavior with degenerate ratio. r=Oriol
To preserve behavior on degenerate ratios like auto 0/0.

Differential Revision: https://phabricator.services.mozilla.com/D158962
2022-10-10 19:07:54 +00:00
Emilio Cobos Álvarez
336ac7bfba Bug 1794265 - Remove untested, Netscape-era editor hack. r=dholbert
Behavior of an editor with only a table seems the same before and after
this patch when positioning the caret with keyboard or mouse, which
seems what this was about (see bug 34356). Nobody reads the magic return
value either, so remove it as well.

If we wanted to tweak this, there's no reason to special-case tables
(we'd want to allow positioning in any arbitrary line-iterable frame).

Differential Revision: https://phabricator.services.mozilla.com/D158927
2022-10-10 19:02:48 +00:00
Mozilla Releng Treescript
7af212518e no bug - Bumping Firefox l10n changesets r=release a=l10n-bump DONTBUILD CLOSED TREE
be -> a683530637366e3a63d1b9ede110bd65c080fa39
en-GB -> 680bb92c6bf29b6742ffe2531a76b43d93665469
fy-NL -> 3b6e5fee53eda11156af5e608db6ec9373c8f76f
he -> 453d059ee2f8b6e150c7ec66a68415c8d99ec038
id -> e375d799dff31452806950130706e7f1d7fcfaff
it -> 23f0c6f048a127a806d6d63e156f73384f0ff083
ja -> 86e3cc1ef4e9d8c3121de38efa6085f5774dc1c5
ja-JP-mac -> c186202b1293a75391094d6f5efe8c65ff1902f6
lo -> c04e3887a1170cbbcc9afd4006593ff466d7468e
nl -> f52b34a299f474953e1ec3f62ab126330c10068d
pt-BR -> 6210b6b3a412caf011f041e6df215dae4ac61faa
pt-PT -> 4d20409610c4de576c54650e636376b88fe2839f
si -> 6a29da9ac8919f75a2e6baaf22cc3afff12a4823
2022-10-10 19:04:28 +00:00
Emilio Cobos Álvarez
0288348ab8 Bug 1794388 - Use nsTArray instead of UniquePtr + length in nsSplitterFrame. r=TYLin
No behavior change intended.

Differential Revision: https://phabricator.services.mozilla.com/D158952
2022-10-10 18:37:29 +00:00
Emilio Cobos Álvarez
8e270a1b3e Bug 1794388 - Clean ResizeType code. r=TYLin
No behavior change intended.

Differential Revision: https://phabricator.services.mozilla.com/D158951
2022-10-10 18:37:29 +00:00
Emilio Cobos Álvarez
aefd7d8f44 Bug 1794388 - Remove unused splitter data member. r=TYLin
No behavior change intended.

Depends on D158949

Differential Revision: https://phabricator.services.mozilla.com/D158950
2022-10-10 18:37:28 +00:00
Emilio Cobos Álvarez
f6958a9eac Bug 1794388 - Make nsSplitterFrameInner::State an enum class. r=TYLin
No behavior change intended.

Differential Revision: https://phabricator.services.mozilla.com/D158949
2022-10-10 18:37:28 +00:00
Dan Robertson
4e9bde7d74 Bug 1793406 - Guard against a null pointer deref if no APZC was found. r=botond
If no target APZC was found, guard agains a nullptr deref, and do not check the
fixed position side bits of the hit.

Differential Revision: https://phabricator.services.mozilla.com/D158862
2022-10-10 18:37:14 +00:00
Jonathan Kew
1384a41aaa Bug 1794277 - Enable the CSS @supports font-tech() and font-format() queries, and tech() in @font-face src descriptors. r=emilio
Depends on D158914

Differential Revision: https://phabricator.services.mozilla.com/D158915
2022-10-10 18:16:29 +00:00
Jonathan Kew
5393328011 Bug 1794091 - Enable CSS font-palette support for all channels by default. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D158914
2022-10-10 18:16:29 +00:00
Olivia Hall
d2bed2b014 Bug 1784554 - Return Input Stream Earlier for GeckoView Save to PDF r=geckoview-reviewers,amejiamarmol,owlish,emilio
Patch returns the input stream earlier for save to PDF. It now uses
SendError when the PDF does not process.

Differential Revision: https://phabricator.services.mozilla.com/D158702
2022-10-10 18:08:34 +00:00
Emilio Cobos Álvarez
3a8f47bb4a Bug 1794265 - Fix infinite loop in PeekOffsetFromLine. r=dholbert
This effectively restores the blockFrame != aPos->mResultFrame check
here:

  66a061bd76 (l1.260)

This is hitting this rather odd code-path from the netscape era, which
is clearly not well tested:

  https://searchfox.org/mozilla-central/rev/ffa4d00965c5281def6d3ddcbcdf6259d38c9b9a/layout/generic/nsIFrame.cpp#8451-8482

I'd happily write a test, but I think I'd need some assistance as I
haven't been able to reproduce this with regular selection APIs / line
movement.

Differential Revision: https://phabricator.services.mozilla.com/D158926
2022-10-10 17:01:06 +00:00
Artur Iunusov
ada494c889 Bug 1170615 - content process invocations now includes current profile r=smaug
- enabling ProcessProfileName allows displaying the current profile name in Task Manager
- example: default:example.com

Differential Revision: https://phabricator.services.mozilla.com/D157890
2022-10-10 16:52:01 +00:00
James Graham
ca0d2865b4 Bug 1789957 - Use standard step_wait for wheel tests, r=smaug
It's not clear what the advantage of waitFor is supposed to be, but in
practice the use of requestAnimationFrame makes the timing somewhat
unpredictable. Just using the built-in timer based polling seems
simpler for these tests without changing their behaviour.

Differential Revision: https://phabricator.services.mozilla.com/D158967
2022-10-10 16:42:59 +00:00
Eden Chuang
fefb5e894a Bug 1762078 - Blocking SerivceWorker interception for no_cors cross-origin range request. r=dom-worker-reviewers,karlt
Differential Revision: https://phabricator.services.mozilla.com/D146553
2022-10-10 16:29:22 +00:00
Morgan Rae Reschenberg
0554a1d02d Bug 1790910: Adjust getTableParent to deal gracefully with outline rows r=eeejay
Differential Revision: https://phabricator.services.mozilla.com/D158890
2022-10-10 16:22:47 +00:00
William Durand
08006b4add Bug 1794085 - Disable action button in unified extensions panel when extension already has permission. r=zombie
Differential Revision: https://phabricator.services.mozilla.com/D158826
2022-10-10 16:21:45 +00:00
Doug Thayer
c73a559a01 Bug 1792158 - Restrict SIMD_avx2 to AMD64 r=stransky
Differential Revision: https://phabricator.services.mozilla.com/D158785
2022-10-10 16:15:48 +00:00
Doug Thayer
9b68d17dda Bug 1792235 - Change ZydisAPI print LIMIT variable to 48 from 36 r=jandem
If there's something I'm missing here that's totally fine, I just keep making
this change locally and reverting it and it would be convenient to just leave
it.

Differential Revision: https://phabricator.services.mozilla.com/D158038
2022-10-10 16:13:26 +00:00
Hubert Boma Manilla
21cb412b0d Bug 1794367 - [devtools] Remove backward compatibility code for 105 r=jdescottes
Differential Revision: https://phabricator.services.mozilla.com/D158937
2022-10-10 15:29:38 +00:00
Hubert Boma Manilla
07c72beec9 Bug 1794379 - [devtools] Update MDN compat data (October 2022) r=jdescottes
Differential Revision: https://phabricator.services.mozilla.com/D158943
2022-10-10 15:28:42 +00:00
Tim Giles
700c162d7e Bug 1792503 - Add keyboard toggle test for tab pickup list. r=sfoster
Differential Revision: https://phabricator.services.mozilla.com/D158675
2022-10-10 15:20:00 +00:00
Tim Giles
344376beed Bug 1792503 - Add keyboard toggle test for recently closed tabs list. r=sfoster
Differential Revision: https://phabricator.services.mozilla.com/D158674
2022-10-10 15:20:00 +00:00