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

21629 Коммитов

Автор SHA1 Сообщение Дата
Randell Jesup deef57618a Bug 1746523: xpcom Timer cleanup, assertions and comments r=bwc,xpcom-reviewers,nika
Differential Revision: https://phabricator.services.mozilla.com/D134089
2022-02-01 20:25:16 +00:00
Masatoshi Kimura 4d3b2121cb Bug 1752683 - Make nsILocalFileWin.canonicalPath [noscript]. r=xpcom-reviewers,mccr8
No JS callers use this attribute anymore.

Differential Revision: https://phabricator.services.mozilla.com/D137380
2022-01-31 19:43:37 +00:00
Randell Jesup 8298bfd153 Bug 1749610: Minor cleanup of xpcom EventQueues r=xpcom-reviewers,nika
Differential Revision: https://phabricator.services.mozilla.com/D135644
2022-01-28 16:49:58 +00:00
Gabriele Svelto 971d0cdf38 Bug 1751041 - Compute the process startup timestamp early during startup r=glandium
Previously the process startup timestamp was computed lazily but this caused
some issues with some of our static analysis infra (see bug 1678152). This
moves computing the timestamp early during process startup and makes it happen
unconditionally.

Differential Revision: https://phabricator.services.mozilla.com/D136406
2022-01-26 19:57:41 +00:00
Nika Layzell ded48d8d02 Bug 1751048 - Include the name of types created in static ctors/dtors in nsTraceRefCnt error messages, r=mccr8
This seems like it will be useful to help figure out what is being
created/destroyed at inappropriate times, and identify potential
problems faster.

Differential Revision: https://phabricator.services.mozilla.com/D136944
2022-01-26 19:48:06 +00:00
Nika Layzell e5ccabd06f Bug 1746533 - Part 2: Use the fallible Poll implementation in moz_task, r=emilio
This should avoid crash issues caused by background task queues being destroyed
and dropping their Runnables.

Differential Revision: https://phabricator.services.mozilla.com/D135410
2022-01-26 15:36:14 +00:00
Mike Hommey 8fd03d2f80 Bug 1751331 - Use the mozbuild crate in nserror. r=xpcom-reviewers,nika
Differential Revision: https://phabricator.services.mozilla.com/D136567
2022-01-25 21:29:53 +00:00
Mike Hommey e467585271 Bug 1751331 - Use the mozbuild crate in xpcom. r=xpcom-reviewers,nika
Differential Revision: https://phabricator.services.mozilla.com/D136565
2022-01-25 21:29:52 +00:00
Noemi Erli f471472a6b Backed out 2 changesets (bug 1678152, bug 1751041) for causing failures in test_missing_intermediate.js CLOSED TREE
Backed out changeset 034ae0e4c467 (bug 1751041)
Backed out changeset 46640f068ae4 (bug 1678152)
2022-01-25 20:09:51 +02:00
Gabriele Svelto 6ef49e257c Bug 1751041 - Compute the process startup timestamp early during startup r=glandium
Previously the process startup timestamp was computed lazily but this caused
some issues with some of our static analysis infra (see bug 1678152). This
moves computing the timestamp early during process startup and makes it happen
unconditionally.

Differential Revision: https://phabricator.services.mozilla.com/D136406
2022-01-25 16:41:21 +00:00
criss 592389ca2d Backed out 10 changesets (bug 1751331) for causing bustages. CLOSED TREE
Backed out changeset 5ce212465a26 (bug 1751331)
Backed out changeset 14d62b8ffa5a (bug 1751331)
Backed out changeset 76f46bd9afa1 (bug 1751331)
Backed out changeset 147faaad046f (bug 1751331)
Backed out changeset f85b049d12f9 (bug 1751331)
Backed out changeset 16d8d3f8378b (bug 1751331)
Backed out changeset 1cd9386a3927 (bug 1751331)
Backed out changeset 20faacba6db6 (bug 1751331)
Backed out changeset 7d17f75bcb38 (bug 1751331)
Backed out changeset 28b9aab1f174 (bug 1751331)
2022-01-25 13:00:25 +02:00
Mike Hommey 209e7cc15f Bug 1751331 - Use the mozbuild crate in nserror. r=xpcom-reviewers,nika
Differential Revision: https://phabricator.services.mozilla.com/D136567
2022-01-25 09:03:05 +00:00
Mike Hommey 5fa0297527 Bug 1751331 - Use the mozbuild crate in xpcom. r=xpcom-reviewers,nika
Differential Revision: https://phabricator.services.mozilla.com/D136565
2022-01-25 09:03:04 +00:00
Mike Conley 038eb21cc2 Bug 1749825 - Make it possible for privileged script to opt elements into mousewheel autodir/honour root behaviour. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D135914
2022-01-21 16:12:48 +00:00
kriswright ad3aa241a4 Bug 1745526 - Add a crash annotation for the linux memory watcher r=gsvelto
Adds a crash annotation, `LinuxUnderMemoryPressure`, which the memory pressure monitor updates based on whether or not it is under memory pressure.

Differential Revision: https://phabricator.services.mozilla.com/D133555
2022-01-20 14:25:44 +00:00
Emilio Cobos Álvarez edb8762a6e Bug 1751088 - Choose tabpanel background based on content preferred color-scheme. r=dao
If the theme is dark but user prefers light pages, the background of the
tabpanel should arguably be light, since it can be seen across some
navigations.

Expose a -moz-content-prefers-color-scheme media query to chrome pages
so that our UI can correctly query it (and remove the unused -moz-proton
atom while at it).

Differential Revision: https://phabricator.services.mozilla.com/D136437
2022-01-20 12:09:13 +00:00
Alexandre Lissy c13cf7c24a Bug 1740268 - Augment IPC process docs with proper bookkeeping r=handyman
Differential Revision: https://phabricator.services.mozilla.com/D135991
2022-01-20 07:55:13 +00:00
Nika Layzell 000a79f56d Bug 1749497 - Remove failing beta-only StringStream test, r=xpcom-reviewers,mccr8
The behaviour which this test was intended to test was only used in
release builds, due to the diagnostic assertion in other builds. The new
equivalent of this assertion has been upgraded to a release assertion,
so the test should no longer be required.

Differential Revision: https://phabricator.services.mozilla.com/D136297
2022-01-20 00:10:42 +00:00
Paul Zuehlcke 47129a9cd9 Bug 1746645 - Generate EscapeChars array programmatically. r=xpcom-reviewers,nika
Differential Revision: https://phabricator.services.mozilla.com/D136222
2022-01-19 10:21:05 +00:00
Jan de Mooij aad84800d2 Bug 1747719 - Use a larger stack size for TaskController threads for ASan builds. r=jonco,bas
ASan builds use more stack space so need a larger stack size. Note that this matches
what we already do for the JS overrecursion limit for the main thread.

This fixes overrecursion errors from the parser when parsing JS files off-thread
on YouTube.

Differential Revision: https://phabricator.services.mozilla.com/D135201
2022-01-18 09:38:53 +00:00
Emilio Cobos Álvarez 8ce808ebbd Bug 1743047 - Use "reveal" rather than show terminology consistently for the reveal password button. r=Gijs,fluent-reviewers
The pseudo-class and nsContextMenu context attribute were using reveal,
the pseudo-element and webidl attribute were using "show".

Use reveal consistently and update the accesskey so that there aren't
conflicts with existing commands. Also enable the feature in
browser_contextmenu_input.js so that this change is tested.

Differential Revision: https://phabricator.services.mozilla.com/D136086
2022-01-17 14:18:51 +00:00
Paul Zuehlcke 7ab30db7fe Bug 1736543 - Tests, r=xpcom-reviewers,nika
Depends on D128630

Differential Revision: https://phabricator.services.mozilla.com/D128631
2022-01-17 12:09:52 +00:00
Yury Delendik ece708abfa Bug 1708743 - Add javascript.options.wasm_simd_avx preference. r=jandem
Allows AVX SIMD instructions on x86/x64. Mostly as experiment for benchmarking --
if success, it will be on if available.

Differential Revision: https://phabricator.services.mozilla.com/D135561
2022-01-12 22:31:30 +00:00
Alexandre Lissy 161f130b0a Bug 1731890 - Adding Utility process with basic sandbox r=agi,nika,bobowen
Differential Revision: https://phabricator.services.mozilla.com/D126297
2022-01-12 20:52:58 +00:00
Neil Deakin fa63e4a464 Bug 371900, always fire a command event on key elements except for those that are marked not to, r=masayuki
The edit-related commands are special because they are handled by ShortcutKeyDefinitions.cpp yet we have duplicate keys because we want the menu disabled state to update properly, so we don't fire command events on those.

Differential Revision: https://phabricator.services.mozilla.com/D135157
2022-01-11 20:02:29 +00:00
Ting-Yu Lin f6ec2fef5c Bug 1749440 - Add nsTSubstring::Insert() that takes a mozilla::Span parameter. r=xpcom-reviewers,nika
Differential Revision: https://phabricator.services.mozilla.com/D135584
2022-01-11 18:52:51 +00:00
Alexandru Michis 7271a078fa Merge autoland to mozilla-central a=merge 2022-01-10 23:30:47 +02:00
Mozilla Releng Treescript b1c26ef50c Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2022-01-10 17:50:37 +00:00
Cristian Tuns b140a2f3d3 Bug 1745116 - disable ThreadMetrics.CollectMetrics on windows x64 r=intermittent-reviewers,MasterWayZ DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D135475
2022-01-10 13:05:27 +00:00
criss e2948093fb Backed out 2 changesets (bug 371900) for causing bug 1749182 . CLOSED TREE
Backed out changeset e59035c65af3 (bug 371900)
Backed out changeset 6434bce9c7d4 (bug 371900)
2022-01-09 16:26:02 +02:00
Neil Deakin 6b88580db1 Bug 371900, always fire a command event on key elements except for those that are marked not to, r=masayuki
The edit-related commands are special because they are handled by ShortcutKeyDefinitions.cpp yet we have duplicate keys because we want the menu disabled state to update properly, so we don't fire command events on those.

Differential Revision: https://phabricator.services.mozilla.com/D135157
2022-01-08 18:07:21 +00:00
Nika Layzell e8f83d2043 Bug 1748718 - Part 3: Remove now-unnecessary xpidl constant casts, r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D135166
2022-01-07 20:35:15 +00:00
Nika Layzell aa59bfed6b Bug 1748718 - Part 2: Use the specified type for rust xpidl constants, r=emilio
Previously all xpidl constants were specified as `i64` which means they require
casts before being passed to any xpcom methods. The lack of typing was not an
issue in c++ due to implicit casts from enums to integer types, but using the
correct type is much more valuable in Rust.

Differential Revision: https://phabricator.services.mozilla.com/D135165
2022-01-07 20:35:15 +00:00
Nika Layzell fed16696c3 Bug 1748718 - Part 1: Allow 64-bit integer constant types in xpidl, r=mccr8
The constants must fit within an int32_t or uint32_t as that is required by the
JS backend with xpt types holding a `uint32_t` and signed bit.

Differential Revision: https://phabricator.services.mozilla.com/D135164
2022-01-07 20:35:14 +00:00
Nika Layzell 4f556b1bea Bug 1748719 - Make nsStringInputStream more flexible as to the backing data buffer, r=mccr8
This change aims to make the way that the nsStringInputStream owns the backing
data buffer more flexible. This has a few impacts, including allowing
arbitrarily large payload sizes on 64-bit platforms, not requiring as complex
checks around borrowed string buffers or nsTArray data storage, and supporting
custom data ownership schemes such as those used by blobs.

The new system uses a separate refcounted object internally to provide the
contiguous backing buffer, with the nsStringInputStream wrapping it and
providing the `nsIInputStream` interface and cursor. This also avoids issues
around the buffer being mutated during reads, as mutating the `nsIInputStream`
no longer mutates the actual data storage object.

Differential Revision: https://phabricator.services.mozilla.com/D135162
2022-01-07 20:34:52 +00:00
Nika Layzell 103100e1ac Bug 1747939 - Relax dispatch_ack assertion to handle ShutdownWithTimeout, r=jstutte
Differential Revision: https://phabricator.services.mozilla.com/D135084
2022-01-05 19:01:44 +00:00
Andreas Pehrson 6f3e18ab53 Bug 1746361 - Gecko Profiler: Track wrapped runnables throughout the tree. r=gerald
The Runnable markers in the profilers are handy, but miss many types of
runnables. This includes most of those that wrap another runnable and run that
at a (possibly) later time.

AbstractThread, TaskDispatcher and TaskQueue does this for e.g. tail dispatched
tasks.

TaskQueueWrapper does this when wrapping webrtc tasks (and Mozilla Runnables) to
be run in a Mozilla TaskQueue with some overhead on the stack.

DelayedRunnable wraps a runnable to be run after a timeout.

It would perhaps be better in many cases to ignore the intermediate runnables,
but I haven't seen a straight forward way to achieve this.

More detailed data could be added on a case by case basis, for instance the
delay for a DelayedRunnable (incl. actual vs. target delay) or the scope of a
task in which a tail-dispatched runnable was dispatched. But this is also true
for the status quo (for instance the time from dispatch to run) so I leave these
ideas as future work.

Differential Revision: https://phabricator.services.mozilla.com/D135027
2022-01-05 15:26:24 +00:00
Emilio Cobos Álvarez 6d97f61bd1 Bug 1746559 - Simplify widget portal code. r=jhorak
There's no reason for that function to live in the GIOService interface.

Differential Revision: https://phabricator.services.mozilla.com/D135121
2022-01-05 14:55:56 +00:00
Butkovits Atila 64c8533f75 Backed out 7 changesets (bug 1746361, bug 1748280, bug 1746347) for causing failures at browser_interaction-between-interfaces.js. CLOSED TREE
Backed out changeset eccba94506f0 (bug 1748280)
Backed out changeset baf39ae53772 (bug 1748280)
Backed out changeset 775843562f7e (bug 1748280)
Backed out changeset 0987c68e9683 (bug 1748280)
Backed out changeset 58dd008520da (bug 1746361)
Backed out changeset 6f9e800877a6 (bug 1746347)
Backed out changeset f78e794a9c2f (bug 1746347)
2022-01-05 13:53:57 +02:00
Andreas Pehrson 0f53cfb803 Bug 1746361 - Gecko Profiler: Track wrapped runnables throughout the tree. r=gerald
The Runnable markers in the profilers are handy, but miss many types of
runnables. This includes most of those that wrap another runnable and run that
at a (possibly) later time.

AbstractThread, TaskDispatcher and TaskQueue does this for e.g. tail dispatched
tasks.

TaskQueueWrapper does this when wrapping webrtc tasks (and Mozilla Runnables) to
be run in a Mozilla TaskQueue with some overhead on the stack.

DelayedRunnable wraps a runnable to be run after a timeout.

It would perhaps be better in many cases to ignore the intermediate runnables,
but I haven't seen a straight forward way to achieve this.

More detailed data could be added on a case by case basis, for instance the
delay for a DelayedRunnable (incl. actual vs. target delay) or the scope of a
task in which a tail-dispatched runnable was dispatched. But this is also true
for the status quo (for instance the time from dispatch to run) so I leave these
ideas as future work.

Differential Revision: https://phabricator.services.mozilla.com/D135027
2022-01-05 10:54:20 +00:00
Chris Peterson 963950be54 Bug 1745613 - Change nsID::GenerateUUID() to not use NSS's RNG off the main thread. r=keeler
Calling NSS_IsInitialized() off the main thread caused intermittent tsan failures because NSS_IsInitialized() reads global variable nssIsInitted without acquiring the nssInitLock lock.

During Firefox startup, about 1000 nsIDs are generated, but only about 10 are generated off the main thread, so this change has very little impact on how often nsID::GenerateUUID() will use NSS's RNG. Of the nsIDs generated on the main thread during startup, about 600 are generated before NSS is initialized (so they use MFBT's RNG) and 400 are generated after NSS is initialized.

After Firefox reaches a steady state, loading a light web page like google.com generates about 300 nsIDs and a heavy web page like cnn.com generates about 2000 nsIDs. All these nsIDs are generated on the main thread using NSS's RNG.

Differential Revision: https://phabricator.services.mozilla.com/D134233
2022-01-05 03:26:38 +00:00
Randell Jesup 7a46e96bdf Bug 1746488: xpcom/io cleanup r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D134062
2022-01-04 14:21:56 +00:00
Iulian Moraru 6648e30451 Backed out changeset f00f297558ab (bug 1745613) for causing bp-hybrid bustages on nsID. CLOSED TREE 2022-01-04 06:41:18 +02:00
Chris Peterson c086a4a91b Bug 1745613 - Change nsID::GenerateUUID() to not use NSS's RNG off the main thread. r=keeler
Calling NSS_IsInitialized() off the main thread caused intermittent tsan failures because NSS_IsInitialized() reads global variable nssIsInitted without acquiring the nssInitLock lock.

During Firefox startup, about 1000 nsIDs are generated, but only about 10 are generated off the main thread, so this change has very little impact on how often nsID::GenerateUUID() will use NSS's RNG. Of the nsIDs generated on the main thread during startup, about 600 are generated before NSS is initialized (so they use MFBT's RNG) and 400 are generated after NSS is initialized.

After Firefox reaches a steady state, loading a light web page like google.com generates about 300 nsIDs and a heavy web page like cnn.com generates about 2000 nsIDs. All these nsIDs are generated on the main thread using NSS's RNG.

Differential Revision: https://phabricator.services.mozilla.com/D134233
2022-01-04 04:07:21 +00:00
Andreea Pavel ed05ed7ebb Bug 1422219 - disable ThreadUtils.IdleRunnableMethod due to frequent failures r=intermittent-reviewers,jmaher
Differential Revision: https://phabricator.services.mozilla.com/D134762
2021-12-31 18:18:58 +00:00
Mike Hommey 1acc37c7a6 Bug 1747756 - Move Windows system libraries from LIBS to moz.build. r=firefox-build-system-reviewers,mhentges
While mingw builds don't require user32 and advapi32 explicitly, it doesn't
hurt for them to be there (and they're required for clang-cl build).
Likewise, while clang-builds don't require uuid and userenv explicitly
because they're pulled in via #pragmas in the source code, mingw doesn't
support those #pragmas and needs them explicitly, which doesn't hurt the
clang-cl builds.

Differential Revision: https://phabricator.services.mozilla.com/D134737
2021-12-30 20:56:43 +00:00
Iulian Moraru b469802d84 Backed out changeset 7f9b4b6191ad (bug 1747756) for causing multiple failures. CLOSED TREE 2021-12-30 01:59:26 +02:00
Mike Hommey cb50a5444f Bug 1747756 - Move Windows system libraries from LIBS to moz.build. r=firefox-build-system-reviewers,mhentges
While mingw builds don't require user32 and advapi32 explicitly, it doesn't
hurt for them to be there (and they're required for clang-cl build).
Likewise, while clang-builds don't require uuid and userenv explicitly
because they're pulled in via #pragmas in the source code, mingw doesn't
support those #pragmas and needs them explicitly, which doesn't hurt the
clang-cl builds.

Differential Revision: https://phabricator.services.mozilla.com/D134737
2021-12-29 22:18:52 +00:00
Eitan Isaacson bcc337c8aa Bug 1744315 - P1: Introduce chrome-only MozMouseExploreByTouch event. r=botond
The goal of this event is for doing hit testing in content and emit an
accessibility event with the result for Android's explore by touch.

This event allows us to use APZ's ability to target the correct content
doc.

Differential Revision: https://phabricator.services.mozilla.com/D132840
2021-12-28 20:41:22 +00:00
Bobby Holley 7be8e183ab Bug 1747514 - Fix some pointer arithmetic issues in RLBox. r=shravanrn
We were double-allocating in TransferBuffer, but that was canceling out
the fact that we were only half-copying.

Differential Revision: https://phabricator.services.mozilla.com/D134669
2021-12-25 06:00:25 +00:00