gecko-dev/ipc
Kirk Steuber 19c8368ea5 Bug 1458314 - Move the update directory to an installation specific location r=rstrong
This change applies to Windows only.
Firefox will need to migrate the directory from the old location to the new location. This will be done only once by setting the pref `app.update.migrated.updateDir2.<install path hash>` to `true` once migration has completed.

Note: The pref name app.update.migrated.updateDir has already been used, thus the '2' suffix. It can be found in ESR24.

This also removes the old handling fallback for generating the update directory path. Since xulrunner is no longer supported, this should no longer be needed. If neither the vendor nor app name are defined, it falls back to the literal string "Mozilla".

The code to generate the update directory path and the installation hash have been moved to the updatecommon library. This will allow those functions to be used in Firefox, the Mozilla Maintenance Service, the Mozilla Maintenance Service Installer, and TestAUSHelper.

Additionally, the function that generates the update directory path now has extra functionality. It creates the update directory, sets the permissions on it and, optionally, recursively sets the permissions on everything within.

This patch adds functionality that allows Firefox to set permissions on the new update directory on write failure. It attempts to set the permissions itself and, if that fails and the maintenance service is enabled, it calls into the maintenance service to try from there. If a write fails and the permissions cannot be fixed, the user is prompted to reinstall.

Differential Revision: https://phabricator.services.mozilla.com/D4249

--HG--
rename : toolkit/mozapps/update/updater/win_dirent.cpp => toolkit/mozapps/update/common/win_dirent.cpp
rename : toolkit/mozapps/update/tests/unit_aus_update/cleanupSuccessLogMove.js => toolkit/mozapps/update/tests/unit_aus_update/updateDirectoryMigrate.js
extra : moz-landing-system : lando
2018-10-23 21:41:04 +00:00
..
app Bug 1431441 - Part 3 - Start the Mac content sandbox earlier r=Alex_Gaynor 2018-10-19 18:23:16 +00:00
chromium Bug 1488808 Part 10 - Notify the record/replay system when a message pump thread blocks after diverging from the recording, r=froydnj. 2018-10-17 10:05:02 -06:00
contentproc Bug 1481719 - Disable profile-instr-out-of-date warnings explicitly rather than allowing all warnings where they appear. r=dmajor 2018-08-09 06:07:33 +09:00
glue Bug 1431441 - Part 3 - Start the Mac content sandbox earlier r=Alex_Gaynor 2018-10-19 18:23:16 +00:00
ipdl Bug 1475139 part 2 - Add 'moveonly' qualifier to IPDL using statements. r=jld 2018-09-24 21:24:24 -05:00
mscom Bug 1458314 - Move the update directory to an installation specific location r=rstrong 2018-10-23 21:41:04 +00:00
testshell Bug 1491939 - Part 3: Centralize configuration of JS realm options from prefs. r=baku 2018-09-25 14:11:13 +00:00
moz.build Backed out changeset 58f0722012cd (bug 1475415) for force-cargo-library-build bustages CLOSED TREE 2018-09-24 19:37:49 +03:00
pull-chromium.py Bug 1468273 - Fix flake8/pep8 issue by hand in ipc/ r=froydnj 2018-07-12 12:03:02 +02:00