Граф коммитов

752231 Коммитов

Автор SHA1 Сообщение Дата
Yulia Startsev 880461bcf7 Bug 1681046: fixup worklet error messages for async modules; r=mgaudet
Differential Revision: https://phabricator.services.mozilla.com/D110561
2021-04-07 08:45:38 +00:00
Yulia Startsev 2b2111b9b2 Bug 1681046 - Enable Top Level Await by default r=mgaudet
Differential Revision: https://phabricator.services.mozilla.com/D110394
2021-04-07 08:45:37 +00:00
Nicolas Silva 613120b983 Bug 1699013 - Add the crash test. r=jnicol
Differential Revision: https://phabricator.services.mozilla.com/D110409
2021-04-07 08:23:28 +00:00
Nicolas Silva 333477b310 Bug 1699013 - Avoid assertion in the image tiling code. r=jnicol
We can gracefully handle null stride when there's no visible rect since it should always result in an empty iterator.

Differential Revision: https://phabricator.services.mozilla.com/D110089
2021-04-07 08:23:27 +00:00
M. Sirringhaus 70a6d1d2e2 Bug 1701623 - Don't build minidump_writer_linux if crashreporter is disabled r=gsvelto
Differential Revision: https://phabricator.services.mozilla.com/D110081
2021-04-07 08:09:23 +00:00
Kershaw Chang 19602fcd6c Bug 1698661 - Use the id of top browsing context to dispatch transactions, r=necko-reviewers,kmag,dragana
Differential Revision: https://phabricator.services.mozilla.com/D110219
2021-04-07 07:59:18 +00:00
Jon Coppeard 0df0e68efa Bug 1703108 - Don't clear tracing context until after it has been used r=mccr8
This tracing context information is used for CC logging. Don't clear it until
after it's been used.

Differential Revision: https://phabricator.services.mozilla.com/D110900
2021-04-07 07:58:38 +00:00
Robert Mader d17d89a150 Bug 1700151 - Detach subsurfaces on hide, r=gw
Detach subsurfaces when hiding by removing the subsurface object.
This allows us to reattach the subsurface to another parent surface,
i.e. another window, and/or recycle the subsurface within a surface pool.

Recycling subsurfaces is until now a quite rare thing in the Wayland
world. Thus adding it to the example-compositor allows to stress-
test Wayland compositors.

Depends on D110745

Differential Revision: https://phabricator.services.mozilla.com/D110863
2021-04-07 07:55:57 +00:00
Gabriele Svelto 2c297e52a8 Bug 1682516 - Launch the crash reporter client after having captured a minidump with the WER runtime exception module r=KrisWright
Differential Revision: https://phabricator.services.mozilla.com/D109346
2021-04-07 07:55:24 +00:00
Gabriele Svelto d99df7cdb4 Bug 1682511 - Add the WER module to the installer and record its path in the Windows registry r=mhowell
Differential Revision: https://phabricator.services.mozilla.com/D107637
2021-04-07 07:55:23 +00:00
Gabriele Svelto fe5599788c Bug 1682514 - Register the Windows Error Reporting exception module so that it can intercept main process crashes r=dmajor
Differential Revision: https://phabricator.services.mozilla.com/D107492
2021-04-07 07:55:23 +00:00
Gabriele Svelto 277338b229 Bug 1682509 - Add a Windows Error Reporting exception module capable of writing out crash reports r=dmajor
This is a minimal implementation of a WER exception module that can intercept
crashes of Firefox processes and write out a fully formed crash report, that is
a minidump, an .extra file containing the minimum annotations required by
Socorro and an event file.

The module in and by itself is not functional: an entry needs to be added to
the registry and the processes which want to be monitored need to register it
at runtime. With this patch applied it will only be built but it won't be
packaged with Firefox nor it will be used when doing local development.

The module implementation has a few notable properties:

* We use an empty C++ shim (mozwer) to build the module DLL. This is
  because the build system doesn't support building DLLs directly from Rust.
* The actual implementation is written in Rust (mozwer-rust) and exposes the
  callbacks that will be invoked by the WER service.
* We use the winapi crate to access Windows native functionality but given it
  is missing some bits (including upstream!) we declare them in our crate for
  the time being.
* The minidump uses the same options we use in Firefox and should be of
  similar size. I manually tested different type of crashes including
  __fastail() ones and they're all reliably captured.
* The .extra file contains only the annotations that are strictly required for
  submitting the crash to crash-stats.mozilla.org. More should be added in the
  future. The existing annotations are all extracted from within the module
  code because we have no way to access the ones that were stored in Firefox'
  crashed processes (nor should we, since we hope to catch crashes that happen
  even before Firefox sets up crash reporting internally).
* The module does not distinguish between main process and content process
  crashes at the moment. This will need to be implemented when we hook it up
  with the crash reporting code within Firefox.
* We use libc's time() function to get the crash time in order to be consistent
  with what the regular exception handler does.

Differential Revision: https://phabricator.services.mozilla.com/D101708
2021-04-07 07:55:23 +00:00
Valentin Gosu 62135a9632 Bug 1699691 - Only trigger CaptivePortalConnectivity confirmation event when CP was locked r=dragana,necko-reviewers
We only need to react to a completed captive portal check when the captive
portal was previously locked. When not in a captive portal, this notification
only means the check has completed - no network properties have changed.

Differential Revision: https://phabricator.services.mozilla.com/D109723
2021-04-07 07:30:00 +00:00
Valentin Gosu 8cd440e44c Bug 1699691 - Add more confirmation tests r=necko-reviewers,dragana
Also makes sure not to trigger two confirmations when the URI pref changes.

Differential Revision: https://phabricator.services.mozilla.com/D109620
2021-04-07 07:30:00 +00:00
Valentin Gosu da6faa016e Bug 1700076 - Clean up test_http3_fast_fallback.js r=necko-reviewers,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D109601
2021-04-07 07:29:59 +00:00
Valentin Gosu 7c60cd7377 Bug 1700076 - Clean up test_dns_by_type_resolve.js r=necko-reviewers,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D109600
2021-04-07 07:29:59 +00:00
Valentin Gosu 9642559564 Bug 1700076 - Clean up unit_ipc/test_dns_by_type_resolve_wrap.js r=necko-reviewers,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D109599
2021-04-07 07:29:58 +00:00
Valentin Gosu 09138a2f79 Bug 1700076 - Clean up test_trr_httpssvc.js r=necko-reviewers,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D109598
2021-04-07 07:29:58 +00:00
Valentin Gosu 38e8d6e73b Bug 1700076 - Clean up test_trr_https_fallback.js r=necko-reviewers,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D109597
2021-04-07 07:29:58 +00:00
Valentin Gosu 067e18e095 Bug 1700076 - Clean up test_httpssvc_retry_without_ech.js r=necko-reviewers,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D109596
2021-04-07 07:29:57 +00:00
Valentin Gosu f1531312ce Bug 1700076 - Clean up test_httpssvc_retry_with_ech.js r=necko-reviewers,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D109595
2021-04-07 07:29:57 +00:00
Valentin Gosu f7d21a92ac Bug 1700076 - Clean up test_httpssvc_iphint.js r=necko-reviewers,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D109594
2021-04-07 07:29:57 +00:00
Valentin Gosu 2e786781f1 Bug 1700076 - Clean up test_httpssvc_https_upgrade.js r=necko-reviewers,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D109593
2021-04-07 07:29:56 +00:00
Valentin Gosu bdb59cf266 Bug 1700076 - Clean up test_httpssvc_priority.js r=necko-reviewers,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D109592
2021-04-07 07:29:56 +00:00
Valentin Gosu 6fc85e2dea Bug 1700076 - Make TRRDNSListener handle for type records resolves r=necko-reviewers,dragana
Differential Revision: https://phabricator.services.mozilla.com/D109591
2021-04-07 07:29:55 +00:00
Valentin Gosu 89a7e43734 Bug 1700076 - Add ability to cancel TRR requests before they're dispatched r=necko-reviewers,dragana
A TRR request is created and dispatched to the handling thread.
If we want to cancel it, we may do so before the runnable has been handled
and there's no HTTP channel - so the cancel was a NO-OP.
Here we add mCancelled which is consulted in SendHTTPRequest to check
if the request has already been cancelled.

Differential Revision: https://phabricator.services.mozilla.com/D109590
2021-04-07 07:29:55 +00:00
Valentin Gosu 726f30aa64 Bug 1700076 - Add ability to count number of DoH requests that reach the TRRServer r=necko-reviewers,dragana
Differential Revision: https://phabricator.services.mozilla.com/D109589
2021-04-07 07:29:54 +00:00
Valentin Gosu 5094c19438 Bug 1700076 - Allow nsHostResolver::FlushCache to clear Type records from the cache r=kershaw,necko-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D109588
2021-04-07 07:29:54 +00:00
Valentin Gosu ca325c9add Bug 1700076 - Fix modernize-use-default-member-init clang-tidy warnings in netwerk/dns/ r=necko-reviewers,dragana
This patch consists of the changes generated by running
`./mach static-analysis check --fix` on `netwerk/dns` after adding the
`modernize-use-default-member-init` clang-tidy lint.
Some additional changes were made by hand to ensure consistent results.
This patch ensures that all member variables are initialized in the header,
so when adding or changing constructors we don't miss one resulting in
uninitialized memory.

Differential Revision: https://phabricator.services.mozilla.com/D109339
2021-04-07 07:29:54 +00:00
Valentin Gosu b3f920ee42 Bug 1700076 - Handle nsHostResolver::CancelAsyncRequest being called for records in the eviction queue r=necko-reviewers,dragana
The reason this worked previously is that we initialized `recPtr = rec;` in
the for loop iterating through callbacks.
Records that were in the evictionQ did not have any callbacks, so we never
entered this block.

Differential Revision: https://phabricator.services.mozilla.com/D109338
2021-04-07 07:29:53 +00:00
Robert Mader ba3ca70a75 Bug 1700151 - Do not require wp_viewporter for non-native mode, r=gw
We don't use it there. This allows the example compositor to be run
on compositors that don't yet support wp_viewporter such as kwin,
even if only in non-native mode.

Differential Revision: https://phabricator.services.mozilla.com/D110745
2021-04-07 07:33:38 +00:00
Jan de Mooij 13cf13a541 Bug 1700052 part 17 - Add Shape::hasSlot. r=jonco
Use this instead of checking `!isCustomDataProperty` (and before this stack, `!isDataProperty`).

Differential Revision: https://phabricator.services.mozilla.com/D110903
2021-04-07 07:16:10 +00:00
Jan de Mooij 11292be321 Bug 1700052 part 16 - Add tests for accessor properties. r=jonco
Differential Revision: https://phabricator.services.mozilla.com/D110263
2021-04-07 07:16:09 +00:00
Jan de Mooij 3040f90784 Bug 1700052 part 15 - Use slot number instead of property shape for ArraySpeciesLookup and PromiseLookup. r=jonco
This is a bit faster than getting the slot number from the shape every time.

Differential Revision: https://phabricator.services.mozilla.com/D110262
2021-04-07 07:16:09 +00:00
Jan de Mooij bb9065ded4 Bug 1700052 part 14 - Rename DataProperty to Property in a few places. r=jonco
Because these methods are now also used for accessor properties.

Differential Revision: https://phabricator.services.mozilla.com/D110261
2021-04-07 07:16:09 +00:00
Jan de Mooij 889dd0226f Bug 1700052 part 13 - Simplify and rename some functions that are now only used for custom data properties. r=jonco
Differential Revision: https://phabricator.services.mozilla.com/D110260
2021-04-07 07:16:08 +00:00
Jan de Mooij 18a8249743 Bug 1700052 part 12 - Remove more AccessorShape code. r=jonco
Differential Revision: https://phabricator.services.mozilla.com/D110259
2021-04-07 07:16:08 +00:00
Jan de Mooij b4ce5b51de Bug 1700052 part 11 - Store getter/setter objects in slots instead of in the shape tree. r=jonco,evilpie
There will be additional cleanup of the Shape code in follow-up patches.

Differential Revision: https://phabricator.services.mozilla.com/D110258
2021-04-07 07:16:07 +00:00
sotaro 1001dc3ad6 Bug 1700524 - Rename aWebRender of CreateForCompositorWidget() to aHardwareWebRender r=jgilbert
Differential Revision: https://phabricator.services.mozilla.com/D109570
2021-04-07 07:04:43 +00:00
Iain Ireland f7aee32789 Bug 1701787: Only enable NewPlainObject for fuzzing r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D110984
2021-04-07 07:03:11 +00:00
Iain Ireland 6a77919060 Bug 1701787: Add NewPlainObjectResult r=jandem
When allocating a plain object with no reserved slots, the information that we need from the template object is minimal: the shape, the AllocKind, and the number of fixed/dynamic slots. To make it possible to share code between NewObject ICs, this patch reads the relevant information out of the template object in NewObjectIRGenerator and encodes it into the CacheIR. We generate code using a new masm function that effectively inlines `initGCThing` and `initGCSlots` into `createGCObject`.

Conveniently, every `JSOp::NewObject` is a plain object with no reserved slots, so this patch reduces the total number of baseline ICs compiled by 2/3. In a future patch we can get rid of NewObjectIRGenerator::tryAttachTemplateObject completely.

The old code didn't support dynamic slots. It's simple enough that I just went ahead and implemented it. In a quick browser experiment, ~8-10% of NewObject ICs had dynamic slots. To limit the length of the unrolled loop, I capped support at 16, which covers ~2/3 of cases with dynamic slots. (Because we always initialize the entire capacity, which is always a power of 2, this just means we support 16 fixed + 7 dynamic, and 16 fixed + 15 dynamic.) We could also consider a follow-up patch that generates an actual loop for dynamic slots and removes the cap.

Differential Revision: https://phabricator.services.mozilla.com/D110341
2021-04-07 07:03:11 +00:00
Nicolas Chevobbe 305b07e914 Bug 1702744 - [devtools] Set browsingContext flags from parent process. r=jdescottes.
Differential Revision: https://phabricator.services.mozilla.com/D110515
2021-04-07 07:01:08 +00:00
Julian Descottes 72743c63e7 Bug 1703275 - [devtools] Share implementation for inspector test helpers selectNodeInFrames & getNodeFrontInFrame r=nchevobbe
Depends on D110746

Differential Revision: https://phabricator.services.mozilla.com/D110943
2021-04-07 06:42:56 +00:00
alwu 73ec85076f Bug 1699772 - add profiler markers and labels in 'DecodedStream'. r=pehrsons,gerald
Differential Revision: https://phabricator.services.mozilla.com/D109099
2021-04-07 06:15:22 +00:00
Henri Sivonen 29b3230825 Bug 1702248 - Limit encoding detection outcome telemetry to top level and to text/html and text/plain. r=emk
Differential Revision: https://phabricator.services.mozilla.com/D110902
2021-04-07 06:05:57 +00:00
alwu b63b46f586 Bug 1702530 - do not launch RDD process if XPCOM has started shutdown. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D110982
2021-04-07 04:42:35 +00:00
sotaro 4b3f251745 Bug 1703140 - Enable software webrender on Nightly for Mali-4XX devices r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D110886
2021-04-07 03:14:34 +00:00
sotaro 044fbff5c0 Bug 1701567 - Schedule paint when PresShell becomes active r=mstange
PresShell::SetIsActive(/* aIsActive */ true) does not directly trigger rendering. On Android, there is a case that rendering of about:support is not updated when PresShell::SetIsActive(true) call is slow during Tab switch.

Differential Revision: https://phabricator.services.mozilla.com/D110682
2021-04-07 03:14:08 +00:00
Hiroyuki Ikezoe b22b1a8297 Bug 1703420 - Use SpecialPowers.spawnChrome to query the top level content document's location to run the test on Fission+XOrig. r=boris
Differential Revision: https://phabricator.services.mozilla.com/D111026
2021-04-07 01:27:29 +00:00
Lee Salzman 7a0649e83c Bug 1703402 - Clamp RGB components after YUV conversion for SWGL blending. r=jrmuizel
This expands on an earlier fix from bug 1698009. It turns out we can occasionally find
YUV values which can still produce negative RGB values if only Y is clamped. The final
solution to this is just to clamp the output RGB values rather than input YUV values.

Since this is only used when we fall off the SWGL fast-paths (which properly handle
this clamping already), the performance impact of the extra clamping should be negligible.

Differential Revision: https://phabricator.services.mozilla.com/D111032
2021-04-07 01:25:34 +00:00