Bug 1527374: Always remove --allow-downgrade from the command line. r=bzbarsky

Currently we only check and remove the --allow-downgrade command line argument
if the run is actually a downgrade. When we don't the --allow-downgrade argument
makes it to Firefox's default command line handler which doesn't know how to
handle it and so ignores it and the next argument on the command line.

Flipping the ordering of the check makes sure we always remove the argument.

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

--HG--
extra : rebase_source : 9d92c78a500bccdcb05d002bb129e779d2391468
This commit is contained in:
Dave Townsend 2019-02-12 13:15:42 -08:00
Родитель da91976685
Коммит 68c6578b56
1 изменённых файлов: 3 добавлений и 1 удалений

Просмотреть файл

@ -4241,7 +4241,9 @@ int XREMain::XRE_mainStartup(bool* aExitFlag) {
flagFile, &cachesOK, &isDowngrade, lastVersion);
#ifdef MOZ_BLOCK_PROFILE_DOWNGRADE
if (isDowngrade && !CheckArg("allow-downgrade")) {
// The argument check must come first so the argument is always removed from
// the command line regardless of whether this is a downgrade or not.
if (!CheckArg("allow-downgrade") && isDowngrade) {
rv = CheckDowngrade(mProfD, mProfLD, mProfileName, mNativeApp, mProfileSvc,
lastVersion);
if (rv == NS_ERROR_LAUNCHED_CHILD_PROCESS || rv == NS_ERROR_ABORT) {