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

3651 Коммитов

Автор SHA1 Сообщение Дата
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
Toshihito Kikuchi 340a227c4d Bug 1749555 - Remove unnecessary printf_stderr in UntrustedModulesProcessor.cpp. r=mhowell
Differential Revision: https://phabricator.services.mozilla.com/D135623
2022-01-12 02:15:03 +00:00
Jan-Erik Rediger 4595f32325 Bug 1749394 - Remove now-expired validation metrics. r=chutten
They served their purpose of validation Gecko integration.
In followups we do some proper migration.

Differential Revision: https://phabricator.services.mozilla.com/D135593
2022-01-11 15:55:02 +00:00
Emilio Cobos Álvarez 636196a020 Bug 1749174 - Make the wayland-enabled check easier to follow. r=stransky
This shouldn't change behavior.

Differential Revision: https://phabricator.services.mozilla.com/D135457
2022-01-09 21:54:38 +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
Mike Hommey fce6eb7d83 Bug 1747165 - Replace TK_FLAGS/TK_LIBS with MOZ_GTK3_FLAGS/MOZ_GTK3_LIBS. r=firefox-build-system-reviewers,andi
Differential Revision: https://phabricator.services.mozilla.com/D134464
2021-12-23 20:29:07 +00:00
Cristian Tuns e1e31e01f2 Backed out 2 changesets (bug 1747165) for causing nightly blockers(bustages) a=backout
Backed out changeset 4b1ab0915c94 (bug 1747165)
Backed out changeset 96043d814772 (bug 1747165)
2021-12-23 08:00:54 -05:00
Toshihito Kikuchi 66d4a1eb24 Bug 1746114 - Part2. Collect the third-party modules ping from socket process. r=mhowell,necko-reviewers,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D133846
2021-12-23 02:15:36 +00:00
Toshihito Kikuchi 7d38851282 Bug 1746114 - Part1. Avoid delayloading shlwapi.dll in a sandboxed process. r=mhowell
While processing third-party module loading events, the process may delayload
shlwapi.dll.  This could be a problem if the process is sandboxed and the access
to local files is restricted.  Before enabling the third-party modules ping in
socket process, this patch avoids such delayloading.

The first path is `ParamTraits<mozilla::ModuleRecord>::Read` calls `NS_NewLocalFile`
that calls `PathGetDriveNumberW`.  This API is simple enough that we define our own
version.

The second path is the ctor of `ProcessedModuleLoadEvent` that is called from
`UntrustedModulesProcessor::CompleteProcessing` calls `PreparePathForTelemetry`
that calls `PathFindFileNameW` and `PathCanonicalizeW`.  For this path, instead
of sanitizing a requested name in `ProcessedModuleLoadEvent`'s ctor, we sanitize
it when transferring it to the main process.

Differential Revision: https://phabricator.services.mozilla.com/D134492
2021-12-23 02:15:35 +00:00
Mike Hommey b55194a16f Bug 1747165 - Replace TK_FLAGS/TK_LIBS with MOZ_GTK3_FLAGS/MOZ_GTK3_LIBS. r=firefox-build-system-reviewers,andi
Differential Revision: https://phabricator.services.mozilla.com/D134464
2021-12-22 23:56:24 +00:00
Mike Hommey 0c6e290483 Bug 1747180 - Remove unused nsIXULRuntime.{isReleaseOrBeta,isOfficialBranding}. r=Gijs
They were superseded by AppConstants.{RELEASE_OR_BETA,MOZ_OFFICIAL_BRANDING}.

Differential Revision: https://phabricator.services.mozilla.com/D134470
2021-12-22 21:25:31 +00:00
Robert Mader e9a79329b7 Bug 1730936 - Use EGL_DRM_RENDER_NODE_FILE_EXT in glxtest, r=gfx-reviewers,aosmond
We have a custom render node discovery code (needed for DMABUF) that
predates the `EGL_DRM_RENDER_NODE_FILE_EXT` extension. It has additional
value that it helps us discover the right vendor and device ID on
multi-GPU setups (there's a EGL extension far that backing, but
not ready yet).
In case our custom code fails - notably split display/render SoCs,
which are common in the ARM world - lets use
`EGL_DRM_RENDER_NODE_FILE_EXT` as fallback. This will ensure we
get a valid render node path on all devices, assuming the driver
supports that extension right. These SoCs are usually no multi-GPU
systems. If they are, we still don't get the right IDs - but an
extension for that is in the making.

Note: Mesa does *not* implement this right for such SoCs, i.e. it
will fail just as our own custom code. However, there's a MR in
review - once it lands, things should start working, see
https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12796

Depends on D134254

Differential Revision: https://phabricator.services.mozilla.com/D134322
2021-12-20 21:59:35 +00:00
Robert Mader 07dc5cb159 Bug 1738814 - Only set MESA_ACCELERATED when explicitly advertised by Mesa, r=gfx-reviewers,jrmuizel
Mesa explicitly advertises the `EGL_MESA_device_software` extension
when appropriate. Only ever set `MESA_ACCELERATED` when that is the
case to avoid confusion around edge-cases and driver bugs.

The `EGL_MESA_device_software` extension is supported whenever
`eglQueryDeviceStringEXT` is. If the later is not supported, fall
back to GLX to make sure we continue detecting software drivers
on old Mesa versions. We don't want to enable EGL on such old drivers
anyway.

Note: this will break `glxtest` on the Wayland backend for old drivers.
This is not problem though as we don't ship it yet, don't plan to ship
it on old Mesa drivers and there don't seem to be any distributions
that ship such a combination (even RHEL 8 appears to ship newer Mesa
by now).

Differential Revision: https://phabricator.services.mozilla.com/D134254
2021-12-20 21:38:53 +00:00
Toshihito Kikuchi 5bb452d7f6 Bug 1743783 - Ignore extra command options when taking a screenshot. r=mossop
`HeadlessShell.handleCmdLineArgs` needs to skip arguments starting with a hyphen
to search for a URL.

This patch also fixes a problem that `nsNativeAppSupportWin::CheckConsole` did
not remove processed command options.

Differential Revision: https://phabricator.services.mozilla.com/D132987
2021-12-16 16:16:16 +00:00
Marian-Vasile Laza e6e2c2338e Backed out changeset 7628f6c5bb8c (bug 1746114) for causing build bustages on SocketProcessParent.obj. 2021-12-16 04:57:19 +02:00
Toshihito Kikuchi 8daad79c45 Bug 1746114 - Collect the third-party modules ping from socket process. r=mhowell,necko-reviewers,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D133846
2021-12-16 01:34:23 +00:00
Nick Alexander d21d507036 Bug 1737117 - Only process updates only for `--backgroundtask backgroundupdate`. r=bytesized
The aim is to avoid background tasks causing unexpected updates, as
happened when we tried to migrate `pingsender` to a Gecko background
task in Bug 1734262.  This commit makes it so that we only process
updates for the `backgroundupdate` task (and the test-only
`shouldprocessupdates` task).

Differential Revision: https://phabricator.services.mozilla.com/D133557
2021-12-14 07:00:59 +00:00
Nick Alexander 33b7a096e7 Bug 1737117 - Pre: Add a reason to "should process updates at startup" logic. r=bytesized
I've elected to rename the function from `Should...` to
`ShouldNot...`, but not to rename the various test files.  The
functionality under test is both "should" and "should not", so I think
the churn of renaming is not justified.

This rearranges the deck chairs to accommodate testing the new
functionality in the next commit.

Differential Revision: https://phabricator.services.mozilla.com/D133556
2021-12-14 07:00:59 +00:00
Butkovits Atila 0a28019a1d Backed out 2 changesets (bug 1737117) for causing bustages at nsAppRunner.cpp. CLOSED TREE
Backed out changeset b78709bc0d0c (bug 1737117)
Backed out changeset b3be1a6a5e3f (bug 1737117)
2021-12-14 06:30:49 +02:00
Nick Alexander 8aa425f55b Bug 1737117 - Only process updates only for `--backgroundtask backgroundupdate`. r=bytesized
The aim is to avoid background tasks causing unexpected updates, as
happened when we tried to migrate `pingsender` to a Gecko background
task in Bug 1734262.  This commit makes it so that we only process
updates for the `backgroundupdate` task (and the test-only
`shouldprocessupdates` task).

Differential Revision: https://phabricator.services.mozilla.com/D133557
2021-12-14 03:44:14 +00:00
Nick Alexander 61521bf00c Bug 1737117 - Pre: Add a reason to "should process updates at startup" logic. r=bytesized
I've elected to rename the function from `Should...` to
`ShouldNot...`, but not to rename the various test files.  The
functionality under test is both "should" and "should not", so I think
the churn of renaming is not justified.

This rearranges the deck chairs to accommodate testing the new
functionality in the next commit.

Differential Revision: https://phabricator.services.mozilla.com/D133556
2021-12-14 03:44:14 +00:00
Nika Layzell e619b6820e Bug 1732358 - Part 4: Enable fission by default on non-android platforms, r=annyG,peterv,pbone,cpeterson
This requires changing the behaviour of test_fission_autostart.js to handle the
new default value.

Differential Revision: https://phabricator.services.mozilla.com/D133008
2021-12-13 20:28:33 +00:00
Nika Layzell 490e62e602 Bug 1732358 - Part 2: Add the ability to force-disable fission with an environment variable, r=ahal,fluent-reviewers,flod,mccr8
This is required to replace the existing MOZ_FORCE_ENABLE_FISSION environment
variables in environments which use that. In the future we'll want to stop
passing any environment variable when not passing a flag to `./mach run`
however that will require changes to the default test behaviour in bug 1744091.

Differential Revision: https://phabricator.services.mozilla.com/D133006
2021-12-13 20:28:33 +00:00
Nika Layzell 0d0306c82f Bug 1732358 - Part 1: Override required_prefs in test_fission_autostart.py, r=whimboo,mccr8
Unfortunately we currently always configure the "fission.autostart" pref when
running tests, meaning that the test_fission_autostart.py test is always being
skipped on all platforms. This change force-disables the required pref when
running the test, rather than skipping the test if it is set.

It would be nice to handle this in a less hacky way, but this was the first way
I could think of.

Differential Revision: https://phabricator.services.mozilla.com/D133005
2021-12-13 20:28:32 +00:00
Nick Alexander 969b4ce42e Bug 1243603 - Telemetry for when Windows invokes Firefox to handle a registered file type or protocol. r=Gijs
The `-osint` flag is used as the signal that Windows is invoking
Firefox to handle a file type or protocol.  The `-osint` flag was
introduced in order to mitigate security breaches due to poor argument
quoting (by consumers invoking Firefox); to use it for this new
purpose, it must be preserved for downstream consumers to react to.
Alternately, some marker of the flag could be maintained.  Since the
flag needs to transit through the launcher process, I've elected to
simply not strip it as we validate command lines, and to accommodate
it further downstream.  (It looks like Thunderbird already
accommodates `-osint`: see
https://searchfox.org/comm-central/rev/3e8f926de9ea09945b237177eb6d489c70318f0e/mail/components/MessengerContentHandler.jsm#568.)

The telemetry in this patch achieves two purposes.  The first is to
count the number of times Firefox is invoked to handle a registered
file type or protocol: for this, a new keyed uint scalar was added.
File types start with a ".", just like on Windows; protocols
(equivalently, the schemes used to identify them) do not start with a
".".

The second is to identify times when Firefox is launched (i.e., it was
not already running) to handle a registered file type or protocol.

This generalizes the existing `os.environment.launch_method`,
introducing `os.environment.launched_to_handle` and
`os.environment.invoked_to_handle` string scalars, which record the
file type or protocol.

The command line state `STATE_INITIAL_LAUNCH` is used to discriminate
launching from invoking.

Differential Revision: https://phabricator.services.mozilla.com/D132288
2021-12-11 00:00:55 +00:00
Mike Hommey 8e411675ac Bug 1744877 - Remove --disable-xul. r=Gijs
Building with --disable-xul has been busted since _at least_ bug
1082579, for more than 7 years (I didn't try to track that down
further). It's time to recognize that the option serves no purpose.

Differential Revision: https://phabricator.services.mozilla.com/D133161
2021-12-08 21:37:11 +00:00
Kirk Steuber 71a9e9b3cb Bug 1732435 - r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D127897
2021-12-08 19:13:01 +00:00
Kirk Steuber b3546869e2 Bug 1732435 - r=nalexander,application-update-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D127894
2021-12-08 19:13:00 +00:00
Butkovits Atila 4ca2f73ae9 Backed out 5 changesets (bug 1732435) for causing bustages at nsXREDirProvider.cpp. CLOSED TREE
Backed out changeset db0701b309ad (bug 1732435)
Backed out changeset 22a583f191e2 (bug 1732435)
Backed out changeset b37ed631436f (bug 1732435)
Backed out changeset 8a734e8a313b (bug 1732435)
Backed out changeset 9cb78a88ffde (bug 1732435)
2021-12-08 20:10:57 +02:00
Kirk Steuber f5da92468b Bug 1732435 - r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D127897
2021-12-08 17:43:19 +00:00
Kirk Steuber a274f9149f Bug 1732435 - r=nalexander,application-update-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D127894
2021-12-08 17:43:18 +00:00
Sandor Molnar 080763b942 Backed out 5 changesets (bug 1732435) for causing build bustages in toolkit/xre/nsXREDirProvider.cpp CLOSED TREE
Backed out changeset 14947028770e (bug 1732435)
Backed out changeset 99d43bb37d9e (bug 1732435)
Backed out changeset 6af39bb5d079 (bug 1732435)
Backed out changeset 0c48fcbb4a1a (bug 1732435)
Backed out changeset aaa7386b1c23 (bug 1732435)
2021-12-08 03:23:35 +02:00
Kirk Steuber 0afae83354 Bug 1732435 - r=nalexander
Depends on D127896

Differential Revision: https://phabricator.services.mozilla.com/D127897
2021-12-07 20:43:36 +00:00
Kirk Steuber 859b4a98f1 Bug 1732435 - r=nalexander,application-update-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D127894
2021-12-07 20:43:35 +00:00
Jonathan Watt 65ad33ee19 Bug 1743328 - Add telemetry to figure out install-from-DMG prompt outcomes. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D132326
2021-12-03 19:45:03 +00:00
Toshihito Kikuchi bdceca20fa Bug 1742692 - Add some modules to mozglue's delayload list. r=mhowell
Differential Revision: https://phabricator.services.mozilla.com/D131968
2021-12-02 04:31:14 +00:00
Chris Peterson f6fdbf028a Bug 1738401 - Remove -Wno-shadow warning suppressions. r=firefox-build-system-reviewers,glandium
-Wshadow warnings are not enabled globally, so these -Wno-shadow suppressions have no effect. I had intended to enable -Wshadow globally along with these suppressions in some directories (in bug 1272513), but that was blocked by other issues.

There are too many -Wshadow warnings (now over 2000) to realistically fix them all. We should remove all these unnecessary -Wno-shadow flags cluttering many moz.build files.

Differential Revision: https://phabricator.services.mozilla.com/D132289
2021-12-01 06:40:04 +00:00
Marian-Vasile Laza bf27ab5fab Backed out changeset 1ff449af979d (bug 1742692) for causing cppunit test failures. CLOSED TREE 2021-11-30 22:19:47 +02:00
Toshihito Kikuchi 18c35bbe88 Bug 1742692 - Add some modules to mozglue's delayload list. r=mhowell
Differential Revision: https://phabricator.services.mozilla.com/D131968
2021-11-30 16:40:45 +00:00
Emilio Cobos Álvarez 8c9d1b38e8 Bug 1741900 - Ensure color-scheme is initialized in a couple callers which might not have initialized LookAndFeel yet. r=mhowell
The previous patch would be a better fix, but it causes some xpcshell
crashes on Linux which I haven't figured out yet (because initializing
LookAndFeel initializes gfxPlatform).

This should be less risky and still fix the bug.

Differential Revision: https://phabricator.services.mozilla.com/D132011
2021-11-24 16:50:38 +00:00
Ben Hearsum c178143375 Bug 1721488: Windows taskbar jumplists are not created when running as an app package r=mhowell
This patch simply avoids calling SetAppID and SetCurrentProcessExplicitAppUserModelID when we're running from a packaged app. For `SetCurrentProcessExplicitAppUserModelID`, I ended up skipping the calls to the functions that call it because I thought it was less surprising behaviour given the names (eg: I might be surprised if `SetTaskbarGroupId` silently didn't set the taskbar group id). It's easy enough to switch up if skipping the calls at a lower level makes more sense.

I couldn't find any automated tests around the Jump List functionality (and we don't have any tests running within MSIX packages yet anyways...), but it worked just fine in my manual test. I also tested the scenario where the AppxManifest.xml ID changes during an upgrade (which will probably happen when https://bugzilla.mozilla.org/show_bug.cgi?id=1736113 gets done). This causes Jump Lists to stop working at first restart, but they appear to rebuilt after the usual few minute wait.

Differential Revision: https://phabricator.services.mozilla.com/D131693
2021-11-23 16:21:01 +00:00
Nika Layzell 54f46c1714 Bug 1734735 - Part 7: Remove all SharedMemoryBasic special messaging code, r=handyman
Differential Revision: https://phabricator.services.mozilla.com/D128216
2021-11-23 16:15:23 +00:00
Toshihito Kikuchi 7d875620dd Bug 1740627 - Reinstate BaseThreadInitThunk hook. r=mhowell
We have the protection mechanism to protect `BaseThreadInitThunk`.  After we
released the launcher process, however, this hook is activated if the launcher
process is disabled, or in plugin-container.exe.  Hopefully this hook still
helps reduce the crash at `BaseThreadInitThunk`.

The patch moves the code applying the hook in `DllBlocklist_Initialize` to
make it run before the init flag check.

Differential Revision: https://phabricator.services.mozilla.com/D131673
2021-11-19 23:49:50 +00:00
Ben Hearsum 62b77fa25e Bug 1738375: Annotate crash reports with Windows app package name and publisher. r=gsvelto
Depends on D130187

Differential Revision: https://phabricator.services.mozilla.com/D130188
2021-11-19 14:51:47 +00:00
Alexandre Lissy a9b9bae961 Bug 1726804 - Refactor PROCESS_TYPE_* from nsICrashService r=gsvelto
Differential Revision: https://phabricator.services.mozilla.com/D121389
2021-11-19 14:02:56 +00:00
Alexandre Lissy 60d10601bb Bug 1726804 - Refactor definition and usage of GECKO_PROCESS_TYPE() r=nika,firefox-build-system-reviewers,mhentges
Differential Revision: https://phabricator.services.mozilla.com/D121388
2021-11-19 14:02:55 +00:00
Alexandru Michis 2cb5b32d02 Backed out 2 changesets (bug 1726804) for causing sm bustages in geckoprocesstypes.
CLOSED TREE

Backed out changeset bf7f73fd1921 (bug 1726804)
Backed out changeset c9936f7534cb (bug 1726804)
2021-11-19 11:40:59 +02:00
Alexandre Lissy 882ec7bc7a Bug 1726804 - Refactor PROCESS_TYPE_* from nsICrashService r=gsvelto
Differential Revision: https://phabricator.services.mozilla.com/D121389
2021-11-19 08:33:43 +00:00