summaryrefslogtreecommitdiffstats
path: root/toolkit/mozapps/update/nsUpdateService.js
diff options
context:
space:
mode:
authorwolfbeast <mcwerewolf@wolfbeast.com>2019-06-04 18:21:04 +0200
committerwolfbeast <mcwerewolf@wolfbeast.com>2019-06-04 18:21:04 +0200
commitdee00a8a79394559e0e868cc72464c2de24583ac (patch)
tree18dc2e3db8127ceabcf9b03416b135bced2976ad /toolkit/mozapps/update/nsUpdateService.js
parent851cfd198bc01020cd411d4f1cd6586222700269 (diff)
parent363bfeb2c06e5f57136ebdab8da1ebeba0591520 (diff)
downloadUXP-dee00a8a79394559e0e868cc72464c2de24583ac.tar
UXP-dee00a8a79394559e0e868cc72464c2de24583ac.tar.gz
UXP-dee00a8a79394559e0e868cc72464c2de24583ac.tar.lz
UXP-dee00a8a79394559e0e868cc72464c2de24583ac.tar.xz
UXP-dee00a8a79394559e0e868cc72464c2de24583ac.zip
Merge branch 'master' into Basilisk-release
Diffstat (limited to 'toolkit/mozapps/update/nsUpdateService.js')
-rw-r--r--toolkit/mozapps/update/nsUpdateService.js350
1 files changed, 38 insertions, 312 deletions
diff --git a/toolkit/mozapps/update/nsUpdateService.js b/toolkit/mozapps/update/nsUpdateService.js
index 4e2d66a5c..dca0a007e 100644
--- a/toolkit/mozapps/update/nsUpdateService.js
+++ b/toolkit/mozapps/update/nsUpdateService.js
@@ -12,7 +12,6 @@ Cu.import("resource://gre/modules/XPCOMUtils.jsm", this);
Cu.import("resource://gre/modules/FileUtils.jsm", this);
Cu.import("resource://gre/modules/Services.jsm", this);
Cu.import("resource://gre/modules/ctypes.jsm", this);
-Cu.import("resource://gre/modules/UpdateTelemetry.jsm", this);
Cu.import("resource://gre/modules/AppConstants.jsm", this);
Cu.importGlobalProperties(["XMLHttpRequest"]);
@@ -164,7 +163,7 @@ XPCOMUtils.defineLazyModuleGetter(this, "UpdateUtils",
"resource://gre/modules/UpdateUtils.jsm");
XPCOMUtils.defineLazyGetter(this, "gLogEnabled", function aus_gLogEnabled() {
- return getPref("getBoolPref", PREF_APP_UPDATE_LOG, false);
+ return Services.prefs.getBoolPref(PREF_APP_UPDATE_LOG, false);
});
XPCOMUtils.defineLazyGetter(this, "gUpdateBundle", function aus_gUpdateBundle() {
@@ -494,7 +493,7 @@ XPCOMUtils.defineLazyGetter(this, "gCanStageUpdatesSession", function aus_gCSUS(
*/
function getCanStageUpdates() {
// If staging updates are disabled, then just bail out!
- if (!getPref("getBoolPref", PREF_APP_UPDATE_STAGING_ENABLED, false)) {
+ if (!Services.prefs.getBoolPref(PREF_APP_UPDATE_STAGING_ENABLED, false)) {
LOG("getCanStageUpdates - staging updates is disabled by preference " +
PREF_APP_UPDATE_STAGING_ENABLED);
return false;
@@ -514,7 +513,7 @@ XPCOMUtils.defineLazyGetter(this, "gCanCheckForUpdates", function aus_gCanCheckF
// If the administrator has disabled app update and locked the preference so
// users can't check for updates. This preference check is ok in this lazy
// getter since locked prefs don't change until the application is restarted.
- var enabled = getPref("getBoolPref", PREF_APP_UPDATE_ENABLED, true);
+ var enabled = Services.prefs.getBoolPref(PREF_APP_UPDATE_ENABLED, true);
if (!enabled && Services.prefs.prefIsLocked(PREF_APP_UPDATE_ENABLED)) {
LOG("gCanCheckForUpdates - unable to automatically check for updates, " +
"the preference is disabled and admistratively locked.");
@@ -551,27 +550,6 @@ function LOG(string) {
}
/**
- * Gets a preference value, handling the case where there is no default.
- * @param func
- * The name of the preference function to call, on nsIPrefBranch
- * @param preference
- * The name of the preference
- * @param defaultValue
- * The default value to return in the event the preference has
- * no setting
- * @return The value of the preference, or undefined if there was no
- * user or default value.
- */
-function getPref(func, preference, defaultValue) {
- try {
- return Services.prefs[func](preference);
- }
- catch (e) {
- }
- return defaultValue;
-}
-
-/**
* Convert a string containing binary values to hex.
*/
function binaryToHex(input) {
@@ -898,16 +876,15 @@ function handleUpdateFailure(update, errorCode) {
}
if (update.errorCode == ELEVATION_CANCELED) {
- let cancelations = getPref("getIntPref", PREF_APP_UPDATE_CANCELATIONS, 0);
+ let cancelations = Services.prefs.getIntPref(PREF_APP_UPDATE_CANCELATIONS, 0);
cancelations++;
Services.prefs.setIntPref(PREF_APP_UPDATE_CANCELATIONS, cancelations);
if (AppConstants.platform == "macosx") {
- let osxCancelations = getPref("getIntPref",
- PREF_APP_UPDATE_CANCELATIONS_OSX, 0);
+ let osxCancelations = Services.prefs.getIntPref(PREF_APP_UPDATE_CANCELATIONS_OSX, 0);
osxCancelations++;
Services.prefs.setIntPref(PREF_APP_UPDATE_CANCELATIONS_OSX,
osxCancelations);
- let maxCancels = getPref("getIntPref",
+ let maxCancels = Services.prefs.getIntPref(
PREF_APP_UPDATE_CANCELATIONS_OSX_MAX,
DEFAULT_CANCELATIONS_OSX_MAX);
// Prevent the preference from setting a value greater than 5.
@@ -971,66 +948,6 @@ function handleFallbackToCompleteUpdate(update, postStaging) {
update.setProperty("patchingFailed", oldType);
}
-function pingStateAndStatusCodes(aUpdate, aStartup, aStatus) {
- let patchType = AUSTLMY.PATCH_UNKNOWN;
- if (aUpdate && aUpdate.selectedPatch && aUpdate.selectedPatch.type) {
- if (aUpdate.selectedPatch.type == "complete") {
- patchType = AUSTLMY.PATCH_COMPLETE;
- } else if (aUpdate.selectedPatch.type == "partial") {
- patchType = AUSTLMY.PATCH_PARTIAL;
- }
- }
-
- let suffix = patchType + "_" + (aStartup ? AUSTLMY.STARTUP : AUSTLMY.STAGE);
- let stateCode = 0;
- let parts = aStatus.split(":");
- if (parts.length > 0) {
- switch (parts[0]) {
- case STATE_NONE:
- stateCode = 2;
- break;
- case STATE_DOWNLOADING:
- stateCode = 3;
- break;
- case STATE_PENDING:
- stateCode = 4;
- break;
- case STATE_APPLYING:
- stateCode = 6;
- break;
- case STATE_APPLIED:
- stateCode = 7;
- break;
- case STATE_APPLIED_OS:
- stateCode = 8;
- break;
- case STATE_SUCCEEDED:
- stateCode = 10;
- break;
- case STATE_DOWNLOAD_FAILED:
- stateCode = 11;
- break;
- case STATE_FAILED:
- stateCode = 12;
- break;
- case STATE_PENDING_ELEVATE:
- stateCode = 13;
- break;
- default:
- stateCode = 1;
- }
-
- if (parts.length > 1) {
- let statusErrorCode = INVALID_UPDATER_STATE_CODE;
- if (parts[0] == STATE_FAILED) {
- statusErrorCode = parseInt(parts[1]) || INVALID_UPDATER_STATUS_CODE;
- }
- AUSTLMY.pingStatusErrorCode(suffix, statusErrorCode);
- }
- }
- AUSTLMY.pingStateCode(suffix, stateCode);
-}
-
/**
* Update Patch
* @param patch
@@ -1177,8 +1094,8 @@ function Update(update) {
this.showNeverForVersion = false;
this.unsupported = false;
this.channel = "default";
- this.promptWaitTime = getPref("getIntPref", PREF_APP_UPDATE_PROMPTWAITTIME, 43200);
- this.backgroundInterval = getPref("getIntPref", PREF_APP_UPDATE_BACKGROUNDINTERVAL,
+ this.promptWaitTime = Services.prefs.getIntPref(PREF_APP_UPDATE_PROMPTWAITTIME, 43200);
+ this.backgroundInterval = Services.prefs.getIntPref(PREF_APP_UPDATE_BACKGROUNDINTERVAL,
DOWNLOAD_BACKGROUND_INTERVAL);
// Null <update>, assume this is a message container and do no
@@ -1558,7 +1475,7 @@ UpdateService.prototype = {
break;
case "nsPref:changed":
if (data == PREF_APP_UPDATE_LOG) {
- gLogEnabled = getPref("getBoolPref", PREF_APP_UPDATE_LOG, false);
+ gLogEnabled = Services.prefs.getBoolPref(PREF_APP_UPDATE_LOG, false);
}
break;
case "profile-change-net-teardown": // fall thru
@@ -1618,7 +1535,6 @@ UpdateService.prototype = {
getService(Ci.nsIUpdateManager);
var update = um.activeUpdate;
var status = readStatusFile(getUpdatesDir());
- pingStateAndStatusCodes(update, true, status);
// STATE_NONE status typically means that the update.status file is present
// but a background download error occurred.
if (status == STATE_NONE) {
@@ -1786,28 +1702,20 @@ UpdateService.prototype = {
if (update.errorCode == NETWORK_ERROR_OFFLINE) {
// Register an online observer to try again
this._registerOnlineObserver();
- if (this._pingSuffix) {
- AUSTLMY.pingCheckCode(this._pingSuffix, AUSTLMY.CHK_OFFLINE);
- }
return;
}
- // Send the error code to telemetry
- AUSTLMY.pingCheckExError(this._pingSuffix, update.errorCode);
update.errorCode = BACKGROUNDCHECK_MULTIPLE_FAILURES;
- let errCount = getPref("getIntPref", PREF_APP_UPDATE_BACKGROUNDERRORS, 0);
+ let errCount = Services.prefs.getIntPref(PREF_APP_UPDATE_BACKGROUNDERRORS, 0);
errCount++;
Services.prefs.setIntPref(PREF_APP_UPDATE_BACKGROUNDERRORS, errCount);
// Don't allow the preference to set a value greater than 20 for max errors.
- let maxErrors = Math.min(getPref("getIntPref", PREF_APP_UPDATE_BACKGROUNDMAXERRORS, 10), 20);
+ let maxErrors = Math.min(Services.prefs.getIntPref(PREF_APP_UPDATE_BACKGROUNDMAXERRORS, 10), 20);
if (errCount >= maxErrors) {
let prompter = Cc["@mozilla.org/updates/update-prompt;1"].
createInstance(Ci.nsIUpdatePrompt);
prompter.showUpdateError(update);
- AUSTLMY.pingCheckCode(this._pingSuffix, AUSTLMY.CHK_GENERAL_ERROR_PROMPT);
- } else {
- AUSTLMY.pingCheckCode(this._pingSuffix, AUSTLMY.CHK_GENERAL_ERROR_SILENT);
}
},
@@ -1852,11 +1760,6 @@ UpdateService.prototype = {
this._checkForBackgroundUpdates(false);
},
- // The suffix used for background update check telemetry histogram ID's.
- get _pingSuffix() {
- return this._isNotify ? AUSTLMY.NOTIFY : AUSTLMY.EXTERNAL;
- },
-
/**
* Checks for updates in the background.
* @param isNotify
@@ -1866,119 +1769,10 @@ UpdateService.prototype = {
_checkForBackgroundUpdates: function AUS__checkForBackgroundUpdates(isNotify) {
this._isNotify = isNotify;
- // Histogram IDs:
- // UPDATE_PING_COUNT_EXTERNAL
- // UPDATE_PING_COUNT_NOTIFY
- AUSTLMY.pingGeneric("UPDATE_PING_COUNT_" + this._pingSuffix,
- true, false);
-
- // Histogram IDs:
- // UPDATE_UNABLE_TO_APPLY_EXTERNAL
- // UPDATE_UNABLE_TO_APPLY_NOTIFY
- AUSTLMY.pingGeneric("UPDATE_UNABLE_TO_APPLY_" + this._pingSuffix,
- getCanApplyUpdates(), true);
- // Histogram IDs:
- // UPDATE_CANNOT_STAGE_EXTERNAL
- // UPDATE_CANNOT_STAGE_NOTIFY
- AUSTLMY.pingGeneric("UPDATE_CANNOT_STAGE_" + this._pingSuffix,
- getCanStageUpdates(), true);
- // Histogram IDs:
- // UPDATE_INVALID_LASTUPDATETIME_EXTERNAL
- // UPDATE_INVALID_LASTUPDATETIME_NOTIFY
- // UPDATE_LAST_NOTIFY_INTERVAL_DAYS_EXTERNAL
- // UPDATE_LAST_NOTIFY_INTERVAL_DAYS_NOTIFY
- AUSTLMY.pingLastUpdateTime(this._pingSuffix);
- // Histogram IDs:
- // UPDATE_NOT_PREF_UPDATE_ENABLED_EXTERNAL
- // UPDATE_NOT_PREF_UPDATE_ENABLED_NOTIFY
- AUSTLMY.pingBoolPref("UPDATE_NOT_PREF_UPDATE_ENABLED_" + this._pingSuffix,
- PREF_APP_UPDATE_ENABLED, true, true);
- // Histogram IDs:
- // UPDATE_NOT_PREF_UPDATE_AUTO_EXTERNAL
- // UPDATE_NOT_PREF_UPDATE_AUTO_NOTIFY
- AUSTLMY.pingBoolPref("UPDATE_NOT_PREF_UPDATE_AUTO_" + this._pingSuffix,
- PREF_APP_UPDATE_AUTO, true, true);
- // Histogram IDs:
- // UPDATE_NOT_PREF_UPDATE_STAGING_ENABLED_EXTERNAL
- // UPDATE_NOT_PREF_UPDATE_STAGING_ENABLED_NOTIFY
- AUSTLMY.pingBoolPref("UPDATE_NOT_PREF_UPDATE_STAGING_ENABLED_" +
- this._pingSuffix,
- PREF_APP_UPDATE_STAGING_ENABLED, true, true);
- if (AppConstants.platform == "win" || AppConstants.platform == "macosx") {
- // Histogram IDs:
- // UPDATE_PREF_UPDATE_CANCELATIONS_EXTERNAL
- // UPDATE_PREF_UPDATE_CANCELATIONS_NOTIFY
- AUSTLMY.pingIntPref("UPDATE_PREF_UPDATE_CANCELATIONS_" + this._pingSuffix,
- PREF_APP_UPDATE_CANCELATIONS, 0, 0);
- }
- if (AppConstants.platform == "macosx") {
- // Histogram IDs:
- // UPDATE_PREF_UPDATE_CANCELATIONS_OSX_EXTERNAL
- // UPDATE_PREF_UPDATE_CANCELATIONS_OSX_NOTIFY
- AUSTLMY.pingIntPref("UPDATE_PREF_UPDATE_CANCELATIONS_OSX_" +
- this._pingSuffix,
- PREF_APP_UPDATE_CANCELATIONS_OSX, 0, 0);
- }
- let prefType = Services.prefs.getPrefType(PREF_APP_UPDATE_URL_OVERRIDE);
- let overridePrefHasValue = prefType != Ci.nsIPrefBranch.PREF_INVALID;
- // Histogram IDs:
- // UPDATE_HAS_PREF_URL_OVERRIDE_EXTERNAL
- // UPDATE_HAS_PREF_URL_OVERRIDE_NOTIFY
- AUSTLMY.pingGeneric("UPDATE_HAS_PREF_URL_OVERRIDE_" + this._pingSuffix,
- overridePrefHasValue, false);
-
- // If a download is in progress or the patch has been staged do nothing.
- if (this.isDownloading) {
- AUSTLMY.pingCheckCode(this._pingSuffix, AUSTLMY.CHK_IS_DOWNLOADING);
- return;
- }
-
if (this._downloader && this._downloader.patchIsStaged) {
- let readState = readStatusFile(getUpdatesDir());
- if (readState == STATE_PENDING ||
- readState == STATE_PENDING_ELEVATE) {
- AUSTLMY.pingCheckCode(this._pingSuffix, AUSTLMY.CHK_IS_DOWNLOADED);
- } else {
- AUSTLMY.pingCheckCode(this._pingSuffix, AUSTLMY.CHK_IS_STAGED);
- }
return;
}
- let validUpdateURL = true;
- try {
- this.backgroundChecker.getUpdateURL(false);
- } catch (e) {
- validUpdateURL = false;
- }
- // The following checks are done here so they can be differentiated from
- // foreground checks.
- if (!UpdateUtils.OSVersion) {
- AUSTLMY.pingCheckCode(this._pingSuffix, AUSTLMY.CHK_NO_OS_VERSION);
- } else if (!UpdateUtils.ABI) {
- AUSTLMY.pingCheckCode(this._pingSuffix, AUSTLMY.CHK_NO_OS_ABI);
- } else if (!validUpdateURL) {
- if (overridePrefHasValue) {
- if (Services.prefs.prefHasUserValue(PREF_APP_UPDATE_URL_OVERRIDE)) {
- AUSTLMY.pingCheckCode(this._pingSuffix,
- AUSTLMY.CHK_INVALID_USER_OVERRIDE_URL);
- } else {
- AUSTLMY.pingCheckCode(this._pingSuffix,
- AUSTLMY.CHK_INVALID_DEFAULT_OVERRIDE_URL);
- }
- } else {
- AUSTLMY.pingCheckCode(this._pingSuffix,
- AUSTLMY.CHK_INVALID_DEFAULT_URL);
- }
- } else if (!getPref("getBoolPref", PREF_APP_UPDATE_ENABLED, true)) {
- AUSTLMY.pingCheckCode(this._pingSuffix, AUSTLMY.CHK_PREF_DISABLED);
- } else if (!hasUpdateMutex()) {
- AUSTLMY.pingCheckCode(this._pingSuffix, AUSTLMY.CHK_NO_MUTEX);
- } else if (!gCanCheckForUpdates) {
- AUSTLMY.pingCheckCode(this._pingSuffix, AUSTLMY.CHK_UNABLE_TO_CHECK);
- } else if (!this.backgroundChecker._enabled) {
- AUSTLMY.pingCheckCode(this._pingSuffix, AUSTLMY.CHK_DISABLED_FOR_SESSION);
- }
-
this.backgroundChecker.checkForUpdates(this, false);
},
@@ -1992,7 +1786,6 @@ UpdateService.prototype = {
*/
selectUpdate: function AUS_selectUpdate(updates) {
if (updates.length == 0) {
- AUSTLMY.pingCheckCode(this._pingSuffix, AUSTLMY.CHK_NO_UPDATE_FOUND);
return null;
}
@@ -2005,7 +1798,6 @@ UpdateService.prototype = {
var majorUpdate = null;
var minorUpdate = null;
var vc = Services.vc;
- let lastCheckCode = AUSTLMY.CHK_NO_COMPAT_UPDATE_FOUND;
updates.forEach(function(aUpdate) {
// Ignore updates for older versions of the applications and updates for
@@ -2018,7 +1810,6 @@ UpdateService.prototype = {
LOG("UpdateService:selectUpdate - skipping update because the " +
"update's application version is less than or equal to " +
"the current application version.");
- lastCheckCode = AUSTLMY.CHK_UPDATE_PREVIOUS_VERSION;
return;
}
@@ -2027,10 +1818,9 @@ UpdateService.prototype = {
// (see bug 350636).
let neverPrefName = PREFBRANCH_APP_UPDATE_NEVER + aUpdate.appVersion;
if (aUpdate.showNeverForVersion &&
- getPref("getBoolPref", neverPrefName, false)) {
+ Services.prefs.getBoolPref(neverPrefName, false)) {
LOG("UpdateService:selectUpdate - skipping update because the " +
"preference " + neverPrefName + " is true");
- lastCheckCode = AUSTLMY.CHK_UPDATE_NEVER_PREF;
return;
}
@@ -2050,7 +1840,6 @@ UpdateService.prototype = {
default:
LOG("UpdateService:selectUpdate - skipping unknown update type: " +
aUpdate.type);
- lastCheckCode = AUSTLMY.CHK_UPDATE_INVALID_TYPE;
break;
}
});
@@ -2058,9 +1847,9 @@ UpdateService.prototype = {
let update = minorUpdate || majorUpdate;
if (AppConstants.platform == "macosx" && update) {
if (getElevationRequired()) {
- let installAttemptVersion = getPref("getCharPref",
+ let installAttemptVersion = Services.prefs.getCharPref(
PREF_APP_UPDATE_ELEVATE_VERSION,
- null);
+ "");
if (vc.compare(installAttemptVersion, update.appVersion) != 0) {
Services.prefs.setCharPref(PREF_APP_UPDATE_ELEVATE_VERSION,
update.appVersion);
@@ -2072,28 +1861,20 @@ UpdateService.prototype = {
Services.prefs.clearUserPref(PREF_APP_UPDATE_ELEVATE_NEVER);
}
} else {
- let numCancels = getPref("getIntPref",
- PREF_APP_UPDATE_CANCELATIONS_OSX, 0);
- let rejectedVersion = getPref("getCharPref",
- PREF_APP_UPDATE_ELEVATE_NEVER, "");
- let maxCancels = getPref("getIntPref",
- PREF_APP_UPDATE_CANCELATIONS_OSX_MAX,
+ let numCancels = Services.prefs.getIntPref(PREF_APP_UPDATE_CANCELATIONS_OSX, 0);
+ let rejectedVersion = Services.prefs.getCharPref(PREF_APP_UPDATE_ELEVATE_NEVER, "");
+ let maxCancels = Services.prefs.getIntPref(PREF_APP_UPDATE_CANCELATIONS_OSX_MAX,
DEFAULT_CANCELATIONS_OSX_MAX);
if (numCancels >= maxCancels) {
LOG("UpdateService:selectUpdate - the user requires elevation to " +
"install this update, but the user has exceeded the max " +
"number of elevation attempts.");
update.elevationFailure = true;
- AUSTLMY.pingCheckCode(
- this._pingSuffix,
- AUSTLMY.CHK_ELEVATION_DISABLED_FOR_VERSION);
} else if (vc.compare(rejectedVersion, update.appVersion) == 0) {
LOG("UpdateService:selectUpdate - the user requires elevation to " +
"install this update, but elevation is disabled for this " +
"version.");
update.elevationFailure = true;
- AUSTLMY.pingCheckCode(this._pingSuffix,
- AUSTLMY.CHK_ELEVATION_OPTOUT_FOR_VERSION);
} else {
LOG("UpdateService:selectUpdate - the user requires elevation to " +
"install the update.");
@@ -2113,8 +1894,6 @@ UpdateService.prototype = {
Services.prefs.clearUserPref(PREF_APP_UPDATE_ELEVATE_NEVER);
}
}
- } else if (!update) {
- AUSTLMY.pingCheckCode(this._pingSuffix, lastCheckCode);
}
return update;
@@ -2132,13 +1911,11 @@ UpdateService.prototype = {
var um = Cc["@mozilla.org/updates/update-manager;1"].
getService(Ci.nsIUpdateManager);
if (um.activeUpdate) {
- AUSTLMY.pingCheckCode(this._pingSuffix, AUSTLMY.CHK_HAS_ACTIVEUPDATE);
return;
}
- var updateEnabled = getPref("getBoolPref", PREF_APP_UPDATE_ENABLED, true);
+ var updateEnabled = Services.prefs.getBoolPref(PREF_APP_UPDATE_ENABLED, true);
if (!updateEnabled) {
- AUSTLMY.pingCheckCode(this._pingSuffix, AUSTLMY.CHK_PREF_DISABLED);
LOG("UpdateService:_selectAndInstallUpdate - not prompting because " +
"update is disabled");
return;
@@ -2152,12 +1929,11 @@ UpdateService.prototype = {
if (update.unsupported) {
LOG("UpdateService:_selectAndInstallUpdate - update not supported for " +
"this system");
- if (!getPref("getBoolPref", PREF_APP_UPDATE_NOTIFIEDUNSUPPORTED, false)) {
+ if (!Services.prefs.getBoolPref(PREF_APP_UPDATE_NOTIFIEDUNSUPPORTED, false)) {
LOG("UpdateService:_selectAndInstallUpdate - notifying that the " +
"update is not supported for this system");
this._showPrompt(update);
}
- AUSTLMY.pingCheckCode(this._pingSuffix, AUSTLMY.CHK_UNSUPPORTED);
return;
}
@@ -2165,7 +1941,6 @@ UpdateService.prototype = {
LOG("UpdateService:_selectAndInstallUpdate - the user is unable to " +
"apply updates... prompting");
this._showPrompt(update);
- AUSTLMY.pingCheckCode(this._pingSuffix, AUSTLMY.CHK_UNABLE_TO_APPLY);
return;
}
@@ -2188,15 +1963,13 @@ UpdateService.prototype = {
if (update.showPrompt) {
LOG("UpdateService:_selectAndInstallUpdate - prompting because the " +
"update snippet specified showPrompt");
- AUSTLMY.pingCheckCode(this._pingSuffix, AUSTLMY.CHK_SHOWPROMPT_SNIPPET);
this._showPrompt(update);
return;
}
- if (!getPref("getBoolPref", PREF_APP_UPDATE_AUTO, true)) {
+ if (!Services.prefs.getBoolPref(PREF_APP_UPDATE_AUTO, true)) {
LOG("UpdateService:_selectAndInstallUpdate - prompting because silent " +
"install is disabled");
- AUSTLMY.pingCheckCode(this._pingSuffix, AUSTLMY.CHK_SHOWPROMPT_PREF);
this._showPrompt(update);
return;
}
@@ -2206,7 +1979,6 @@ UpdateService.prototype = {
if (status == STATE_NONE) {
cleanupActiveUpdate();
}
- AUSTLMY.pingCheckCode(this._pingSuffix, AUSTLMY.CHK_DOWNLOAD_UPDATE);
},
_showPrompt: function AUS__showPrompt(update) {
@@ -2370,8 +2142,6 @@ UpdateService.prototype = {
if (!osApplyToDir) {
LOG("UpdateService:applyOsUpdate - Error: osApplyToDir is not defined" +
"in the nsIUpdate!");
- pingStateAndStatusCodes(aUpdate, false,
- STATE_FAILED + ": " + FOTA_FILE_OPERATION_ERROR);
handleUpdateFailure(aUpdate, FOTA_FILE_OPERATION_ERROR);
return;
}
@@ -2381,8 +2151,6 @@ UpdateService.prototype = {
if (!updateFile.exists()) {
LOG("UpdateService:applyOsUpdate - Error: OS update is not found at " +
updateFile.path);
- pingStateAndStatusCodes(aUpdate, false,
- STATE_FAILED + ": " + FOTA_FILE_OPERATION_ERROR);
handleUpdateFailure(aUpdate, FOTA_FILE_OPERATION_ERROR);
return;
}
@@ -2397,8 +2165,6 @@ UpdateService.prototype = {
} catch (e) {
LOG("UpdateService:applyOsUpdate - Error: Couldn't reboot into recovery" +
" to apply FOTA update " + updateFile.path);
- pingStateAndStatusCodes(aUpdate, false,
- STATE_FAILED + ": " + FOTA_RECOVERY_ERROR);
writeStatusFile(getUpdatesDir(), aUpdate.state = STATE_APPLIED);
handleUpdateFailure(aUpdate, FOTA_RECOVERY_ERROR);
}
@@ -2700,7 +2466,6 @@ UpdateManager.prototype = {
return;
}
var status = readStatusFile(getUpdatesDir());
- pingStateAndStatusCodes(update, false, status);
var parts = status.split(":");
update.state = parts[0];
if (update.state == STATE_FAILED && parts[1]) {
@@ -2733,7 +2498,7 @@ UpdateManager.prototype = {
Services.obs.notifyObservers(null, "update-staged", update.state);
// Only prompt when the UI isn't already open.
- let windowType = getPref("getCharPref", PREF_APP_UPDATE_ALTWINDOWTYPE, null);
+ let windowType = Services.prefs.getCharPref(PREF_APP_UPDATE_ALTWINDOWTYPE, "");
if (Services.wm.getMostRecentWindow(UPDATE_WINDOW_NAME) ||
windowType && Services.wm.getMostRecentWindow(windowType)) {
return;
@@ -2813,15 +2578,12 @@ Checker.prototype = {
this._forced = force;
// Use the override URL if specified.
- let url = getPref("getCharPref", PREF_APP_UPDATE_URL_OVERRIDE, null);
+ let url = Services.prefs.getCharPref(PREF_APP_UPDATE_URL_OVERRIDE, "");
// Otherwise, construct the update URL from component parts.
if (!url) {
- try {
- url = Services.prefs.getDefaultBranch(null).
- getCharPref(PREF_APP_UPDATE_URL);
- } catch (e) {
- }
+ url = Services.prefs.getDefaultBranch(null).
+ getCharPref(PREF_APP_UPDATE_URL, "");
}
if (!url || url == "") {
@@ -3016,7 +2778,7 @@ Checker.prototype = {
*/
_enabled: true,
get enabled() {
- return getPref("getBoolPref", PREF_APP_UPDATE_ENABLED, true) &&
+ return Services.prefs.getBoolPref(PREF_APP_UPDATE_ENABLED, true) &&
gCanCheckForUpdates && hasUpdateMutex() && this._enabled;
},
@@ -3115,8 +2877,6 @@ Downloader.prototype = {
_verifyDownload: function Downloader__verifyDownload() {
LOG("Downloader:_verifyDownload called");
if (!this._request) {
- AUSTLMY.pingDownloadCode(this.isCompleteUpdate,
- AUSTLMY.DWNLD_ERR_VERIFY_NO_REQUEST);
return false;
}
@@ -3125,8 +2885,6 @@ Downloader.prototype = {
// Ensure that the file size matches the expected file size.
if (destination.fileSize != this._patch.size) {
LOG("Downloader:_verifyDownload downloaded size != expected size.");
- AUSTLMY.pingDownloadCode(this.isCompleteUpdate,
- AUSTLMY.DWNLD_ERR_VERIFY_PATCH_SIZE_NOT_EQUAL);
return false;
}
@@ -3171,8 +2929,6 @@ Downloader.prototype = {
}
LOG("Downloader:_verifyDownload hashes do not match. ");
- AUSTLMY.pingDownloadCode(this.isCompleteUpdate,
- AUSTLMY.DWNLD_ERR_VERIFY_NO_HASH_MATCH);
return false;
},
@@ -3299,7 +3055,6 @@ Downloader.prototype = {
downloadUpdate: function Downloader_downloadUpdate(update) {
LOG("UpdateService:_downloadUpdate");
if (!update) {
- AUSTLMY.pingDownloadCode(undefined, AUSTLMY.DWNLD_ERR_NO_UPDATE);
throw Cr.NS_ERROR_NULL_POINTER;
}
@@ -3312,7 +3067,6 @@ Downloader.prototype = {
this._patch = this._selectPatch(update, updateDir);
if (!this._patch) {
LOG("Downloader:downloadUpdate - no patch to download");
- AUSTLMY.pingDownloadCode(undefined, AUSTLMY.DWNLD_ERR_NO_UPDATE_PATCH);
return readStatusFile(updateDir);
}
this.isCompleteUpdate = this._patch.type == "complete";
@@ -3324,8 +3078,6 @@ Downloader.prototype = {
patchFile = this._getUpdateArchiveFile();
}
if (!patchFile) {
- AUSTLMY.pingDownloadCode(this.isCompleteUpdate,
- AUSTLMY.DWNLD_ERR_NO_PATCH_FILE);
return STATE_NONE;
}
@@ -3429,8 +3181,6 @@ Downloader.prototype = {
// It's important that we use a different code than
// NS_ERROR_CORRUPTED_CONTENT so that tests can verify the difference
// between a hash error and a wrong download error.
- AUSTLMY.pingDownloadCode(this.isCompleteUpdate,
- AUSTLMY.DWNLD_ERR_PATCH_SIZE_LARGER);
this.cancel(Cr.NS_ERROR_UNEXPECTED);
return;
}
@@ -3441,8 +3191,6 @@ Downloader.prototype = {
// It's important that we use a different code than
// NS_ERROR_CORRUPTED_CONTENT so that tests can verify the difference
// between a hash error and a wrong download error.
- AUSTLMY.pingDownloadCode(this.isCompleteUpdate,
- AUSTLMY.DWNLD_ERR_PATCH_SIZE_NOT_EQUAL);
this.cancel(Cr.NS_ERROR_UNEXPECTED);
return;
}
@@ -3502,11 +3250,11 @@ Downloader.prototype = {
var shouldRegisterOnlineObserver = false;
var shouldRetrySoon = false;
var deleteActiveUpdate = false;
- var retryTimeout = getPref("getIntPref", PREF_APP_UPDATE_SOCKET_RETRYTIMEOUT,
+ var retryTimeout = Services.prefs.getIntPref(PREF_APP_UPDATE_SOCKET_RETRYTIMEOUT,
DEFAULT_SOCKET_RETRYTIMEOUT);
// Prevent the preference from setting a value greater than 10000.
retryTimeout = Math.min(retryTimeout, 10000);
- var maxFail = getPref("getIntPref", PREF_APP_UPDATE_SOCKET_MAXERRORS,
+ var maxFail = Services.prefs.getIntPref(PREF_APP_UPDATE_SOCKET_MAXERRORS,
DEFAULT_SOCKET_MAX_ERRORS);
// Prevent the preference from setting a value greater than 20.
maxFail = Math.min(maxFail, 20);
@@ -3523,7 +3271,6 @@ Downloader.prototype = {
if (this.background) {
shouldShowPrompt = !getCanStageUpdates();
}
- AUSTLMY.pingDownloadCode(this.isCompleteUpdate, AUSTLMY.DWNLD_SUCCESS);
// Tell the updater.exe we're ready to apply.
writeStatusFile(getUpdatesDir(), state);
@@ -3553,8 +3300,6 @@ Downloader.prototype = {
// calling downloadUpdate on the active update which continues
// downloading the file from where it was.
LOG("Downloader:onStopRequest - offline, register online observer: true");
- AUSTLMY.pingDownloadCode(this.isCompleteUpdate,
- AUSTLMY.DWNLD_RETRY_OFFLINE);
shouldRegisterOnlineObserver = true;
deleteActiveUpdate = false;
// Each of NS_ERROR_NET_TIMEOUT, ERROR_CONNECTION_REFUSED,
@@ -3568,25 +3313,11 @@ Downloader.prototype = {
status == Cr.NS_ERROR_DOCUMENT_NOT_CACHED) &&
this.updateService._consecutiveSocketErrors < maxFail) {
LOG("Downloader:onStopRequest - socket error, shouldRetrySoon: true");
- let dwnldCode = AUSTLMY.DWNLD_RETRY_CONNECTION_REFUSED;
- if (status == Cr.NS_ERROR_NET_TIMEOUT) {
- dwnldCode = AUSTLMY.DWNLD_RETRY_NET_TIMEOUT;
- } else if (status == Cr.NS_ERROR_NET_RESET) {
- dwnldCode = AUSTLMY.DWNLD_RETRY_NET_RESET;
- } else if (status == Cr.NS_ERROR_DOCUMENT_NOT_CACHED) {
- dwnldCode = AUSTLMY.DWNLD_ERR_DOCUMENT_NOT_CACHED;
- }
- AUSTLMY.pingDownloadCode(this.isCompleteUpdate, dwnldCode);
shouldRetrySoon = true;
deleteActiveUpdate = false;
} else if (status != Cr.NS_BINDING_ABORTED &&
status != Cr.NS_ERROR_ABORT) {
LOG("Downloader:onStopRequest - non-verification failure");
- let dwnldCode = AUSTLMY.DWNLD_ERR_BINDING_ABORTED;
- if (status == Cr.NS_ERROR_ABORT) {
- dwnldCode = AUSTLMY.DWNLD_ERR_ABORT;
- }
- AUSTLMY.pingDownloadCode(this.isCompleteUpdate, dwnldCode);
// Some sort of other failure, log this in the |statusText| property
state = STATE_DOWNLOAD_FAILED;
@@ -3762,20 +3493,20 @@ UpdatePrompt.prototype = {
* See nsIUpdateService.idl
*/
showUpdateAvailable: function UP_showUpdateAvailable(update) {
- if (getPref("getBoolPref", PREF_APP_UPDATE_SILENT, false) ||
+ if (Services.prefs.getBoolPref(PREF_APP_UPDATE_SILENT, false) ||
this._getUpdateWindow() || this._getAltUpdateWindow()) {
return;
}
- this._showUnobtrusiveUI(null, URI_UPDATE_PROMPT_DIALOG, null,
- UPDATE_WINDOW_NAME, "updatesavailable", update);
+ this._showUI(null, URI_UPDATE_PROMPT_DIALOG, null,
+ UPDATE_WINDOW_NAME, "updatesavailable", update);
},
/**
* See nsIUpdateService.idl
*/
showUpdateDownloaded: function UP_showUpdateDownloaded(update, background) {
- if (background && getPref("getBoolPref", PREF_APP_UPDATE_SILENT, false)) {
+ if (background && Services.prefs.getBoolPref(PREF_APP_UPDATE_SILENT, false)) {
return;
}
// Trigger the display of the hamburger menu badge.
@@ -3784,20 +3515,15 @@ UpdatePrompt.prototype = {
if (this._getAltUpdateWindow())
return;
- if (background) {
- this._showUnobtrusiveUI(null, URI_UPDATE_PROMPT_DIALOG, null,
- UPDATE_WINDOW_NAME, "finishedBackground", update);
- } else {
- this._showUI(null, URI_UPDATE_PROMPT_DIALOG, null,
- UPDATE_WINDOW_NAME, "finishedBackground", update);
- }
+ this._showUI(null, URI_UPDATE_PROMPT_DIALOG, null,
+ UPDATE_WINDOW_NAME, "finishedBackground", update);
},
/**
* See nsIUpdateService.idl
*/
showUpdateError: function UP_showUpdateError(update) {
- if (getPref("getBoolPref", PREF_APP_UPDATE_SILENT, false) ||
+ if (Services.prefs.getBoolPref(PREF_APP_UPDATE_SILENT, false) ||
this._getAltUpdateWindow())
return;
@@ -3840,7 +3566,7 @@ UpdatePrompt.prototype = {
* See nsIUpdateService.idl
*/
showUpdateElevationRequired: function UP_showUpdateElevationRequired() {
- if (getPref("getBoolPref", PREF_APP_UPDATE_SILENT, false) ||
+ if (Services.prefs.getBoolPref(PREF_APP_UPDATE_SILENT, false) ||
this._getAltUpdateWindow()) {
return;
}
@@ -3864,7 +3590,7 @@ UpdatePrompt.prototype = {
* application update user interface window.
*/
_getAltUpdateWindow: function UP__getAltUpdateWindow() {
- let windowType = getPref("getCharPref", PREF_APP_UPDATE_ALTWINDOWTYPE, null);
+ let windowType = Services.prefs.getCharPref(PREF_APP_UPDATE_ALTWINDOWTYPE, "");
if (!windowType)
return null;
return Services.wm.getMostRecentWindow(windowType);
@@ -3916,7 +3642,7 @@ UpdatePrompt.prototype = {
var idleService = Cc["@mozilla.org/widget/idleservice;1"].
getService(Ci.nsIIdleService);
// Don't allow the preference to set a value greater than 600 seconds for the idle time.
- const IDLE_TIME = Math.min(getPref("getIntPref", PREF_APP_UPDATE_IDLETIME, 60), 600);
+ const IDLE_TIME = Math.min(Services.prefs.getIntPref(PREF_APP_UPDATE_IDLETIME, 60), 600);
if (idleService.idleTime / 1000 >= IDLE_TIME) {
this._showUI(parent, uri, features, name, page, update);
return;
@@ -3961,7 +3687,7 @@ UpdatePrompt.prototype = {
getService(Ci.nsIIdleService);
// Don't allow the preference to set a value greater than 600 seconds for the idle time.
- const IDLE_TIME = Math.min(getPref("getIntPref", PREF_APP_UPDATE_IDLETIME, 60), 600);
+ const IDLE_TIME = Math.min(Services.prefs.getIntPref(PREF_APP_UPDATE_IDLETIME, 60), 600);
if (idleService.idleTime / 1000 >= IDLE_TIME) {
this._showUI(parent, uri, features, name, page, update);
} else {