Back out 01bc57172461:5bd9adbd3b15 (bug 843497) for xpcshell failures

This commit is contained in:
Phil Ringnalda 2013-06-21 19:49:47 -07:00
Родитель 22d041a054
Коммит 864d14c11f
18 изменённых файлов: 29 добавлений и 276 удалений

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

@ -302,15 +302,6 @@ appUpdater.prototype =
return;
}
if (gAppUpdater.update.unsupported) {
if (gAppUpdater.update.detailsURL) {
let unsupportedLink = document.getElementById("unsupportedLink");
unsupportedLink.href = gAppUpdater.update.detailsURL;
}
gAppUpdater.selectPanel("unsupportedSystem");
return;
}
if (!gAppUpdater.aus.canApplyUpdates) {
gAppUpdater.selectPanel("manualUpdate");
return;

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

@ -82,9 +82,6 @@
<hbox id="manualUpdate" align="center">
<label>&update.manual.start;</label><label id="manualLink" class="text-link"/><label>&update.manual.end;</label>
</hbox>
<hbox id="unsupportedSystem" align="center">
<label>&update.unsupported.start;</label><label id="unsupportedLink" class="text-link">&update.unsupported.linkText;</label><label>&update.unsupported.end;</label>
</hbox>
</deck>
#endif
</vbox>

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

@ -66,16 +66,6 @@
<!ENTITY update.manual.start "Updates available at ">
<!ENTITY update.manual.end "">
<!-- LOCALIZATION NOTE (update.unsupported.start,update.unsupported.linkText,update.unsupported.end):
update.unsupported.start, update.unsupported.linkText, and
update.unsupported.end all go into one line with linkText being wrapped in
an anchor that links to a site to provide additional information regarding
why the system is no longer supported. As this is all in one line, try to
make the localized text short (see bug 843497 for screenshots). -->
<!ENTITY update.unsupported.start "You can not perform further updates on this system. ">
<!ENTITY update.unsupported.linkText "Learn more">
<!ENTITY update.unsupported.end "">
<!-- LOCALIZATION NOTE (update.downloading.start,update.downloading.end): update.downloading.start and
update.downloading.end all go into one line, with the amount downloaded inserted in between. As this
is all in one line, try to make the localized text short (see bug 596813 for screenshots). The is

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

@ -25,12 +25,6 @@
not have enough space to install it.">
<!ENTITY manualUpdateGetMsg.label "You can always get the latest version of &brandShortName; at:">
<!ENTITY unsupported.title "System Unsupported">
<!ENTITY unsupported.label "Your &brandShortName; is out of date, but the latest version is not
supported on your system. Please upgrade your system, then try again.
You will not see this notice again, but you can">
<!ENTITY unsupportedLink.label "learn more.">
<!ENTITY incompatibleCheck.title "Checking Add-on Compatibility">
<!ENTITY incompatibleCheck.label "Looking for newer versions of your add-ons…">

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

@ -13,20 +13,19 @@ const CoC = Components.classes;
const CoI = Components.interfaces;
const CoR = Components.results;
const XMLNS_XUL = "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul";
const XMLNS_XUL = "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul";
const PREF_APP_UPDATE_BACKGROUNDERRORS = "app.update.backgroundErrors";
const PREF_APP_UPDATE_BILLBOARD_TEST_URL = "app.update.billboard.test_url";
const PREF_APP_UPDATE_CERT_ERRORS = "app.update.cert.errors";
const PREF_APP_UPDATE_ENABLED = "app.update.enabled";
const PREF_APP_UPDATE_LOG = "app.update.log";
const PREF_APP_UPDATE_MANUAL_URL = "app.update.url.manual";
const PREF_APP_UPDATE_NEVER_BRANCH = "app.update.never.";
const PREF_APP_UPDATE_NOTIFIEDUNSUPPORTED = "app.update.notifiedUnsupported";
const PREF_APP_UPDATE_TEST_LOOP = "app.update.test.loop";
const PREF_PLUGINS_UPDATEURL = "plugins.update.url";
const PREF_APP_UPDATE_BACKGROUNDERRORS = "app.update.backgroundErrors";
const PREF_APP_UPDATE_BILLBOARD_TEST_URL = "app.update.billboard.test_url";
const PREF_APP_UPDATE_CERT_ERRORS = "app.update.cert.errors";
const PREF_APP_UPDATE_ENABLED = "app.update.enabled";
const PREF_APP_UPDATE_LOG = "app.update.log";
const PREF_APP_UPDATE_MANUAL_URL = "app.update.url.manual";
const PREF_APP_UPDATE_NEVER_BRANCH = "app.update.never.";
const PREF_APP_UPDATE_TEST_LOOP = "app.update.test.loop";
const PREF_PLUGINS_UPDATEURL = "plugins.update.url";
const PREF_EM_HOTFIX_ID = "extensions.hotfix.id";
const PREF_EM_HOTFIX_ID = "extensions.hotfix.id";
const UPDATE_TEST_LOOP_INTERVAL = 2000;
@ -383,11 +382,6 @@ var gUpdates = {
return;
}
if (this.update.unsupported) {
aCallback("unsupported");
return;
}
var p = this.update.selectedPatch;
if (p) {
var state = p.state;
@ -600,11 +594,6 @@ var gCheckingPage = {
if (Services.prefs.prefHasUserValue(PREF_APP_UPDATE_BACKGROUNDERRORS))
Services.prefs.clearUserPref(PREF_APP_UPDATE_BACKGROUNDERRORS);
// The preference will be set back to true if the system is still
// unsupported.
if (Services.prefs.prefHasUserValue(PREF_APP_UPDATE_NOTIFIEDUNSUPPORTED))
Services.prefs.clearUserPref(PREF_APP_UPDATE_NOTIFIEDUNSUPPORTED);
this._checker = CoC["@mozilla.org/updates/update-checker;1"].
createInstance(CoI.nsIUpdateChecker);
this._checker.checkForUpdates(this.updateListener, true);
@ -632,11 +621,6 @@ var gCheckingPage = {
gUpdates.setUpdate(aus.selectUpdate(updates, updates.length));
if (gUpdates.update) {
LOG("gCheckingPage", "onCheckComplete - update found");
if (gUpdates.update.unsupported) {
gUpdates.wiz.goTo("unsupported");
return;
}
if (!aus.canApplyUpdates) {
// Prevent multiple notifications for the same update when the user is
// unable to apply updates.
@ -884,23 +868,6 @@ var gManualUpdatePage = {
}
};
/**
* The "System Unsupported" page. Provides the user with information about their
* system no longer being supported and an url for more information.
*/
var gUnsupportedPage = {
onPageShow: function() {
Services.prefs.setBoolPref(PREF_APP_UPDATE_NOTIFIEDUNSUPPORTED, true);
if (gUpdates.update.detailsURL) {
let unsupportedLinkLabel = document.getElementById("unsupportedLinkLabel");
unsupportedLinkLabel.setAttribute("url", gUpdates.update.detailsURL);
}
gUpdates.setButtons(null, null, "okButton", true);
gUpdates.wiz.getButton("finish").focus();
}
};
/**
* The "Updates Are Available" page. Provides the user information about the
* available update.

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

@ -82,19 +82,6 @@
</vbox>
</wizardpage>
<wizardpage id="unsupported" pageid="unsupported"
object="gUnsupportedPage"
onpageshow="gUnsupportedPage.onPageShow();">
<updateheader label="&unsupported.title;"/>
<vbox class="update-content" flex="1">
<description flex="1">&unsupported.label;
<label id="unsupportedLinkLabel" class="text-link inline-link" onclick="openUpdateURL(event);">
&unsupportedLink.label;
</label>
</description>
</vbox>
</wizardpage>
<wizardpage id="incompatibleCheck" pageid="incompatibleCheck"
next="updatesfoundbasic" object="gIncompatibleCheckPage"
onpageshow="gIncompatibleCheckPage.onPageShow();">

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

@ -87,7 +87,7 @@ interface nsIUpdatePatch : nsISupports
* that the front end and other application services can use to learn more
* about what is going on.
*/
[scriptable, uuid(6b0b7721-6746-443d-8cb0-c6199d7f28a6)]
[scriptable, uuid(8f7185a7-056a-45a8-985c-1cb39cf7b7a8)]
interface nsIUpdate : nsISupports
{
/**
@ -178,9 +178,10 @@ interface nsIUpdate : nsISupports
attribute boolean showNeverForVersion;
/**
* Whether the update is no longer supported on this system.
* Whether to show the survey link in the update prompt. The url must also be
* present in the app.update.surveyURL preference.
*/
attribute boolean unsupported;
attribute boolean showSurvey;
/**
* Allows overriding the default amount of time in seconds before prompting the

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

@ -44,7 +44,6 @@ const PREF_APP_UPDATE_PROMPTWAITTIME = "app.update.promptWaitTime";
const PREF_APP_UPDATE_SHOW_INSTALLED_UI = "app.update.showInstalledUI";
const PREF_APP_UPDATE_SILENT = "app.update.silent";
const PREF_APP_UPDATE_STAGING_ENABLED = "app.update.staging.enabled";
const PREF_APP_UPDATE_NOTIFIEDUNSUPPORTED = "app.update.notifiedUnsupported";
const PREF_APP_UPDATE_URL = "app.update.url";
const PREF_APP_UPDATE_URL_DETAILS = "app.update.url.details";
const PREF_APP_UPDATE_URL_OVERRIDE = "app.update.url.override";
@ -182,7 +181,6 @@ const DEFAULT_SOCKET_MAX_ERRORS = 10;
const DEFAULT_UPDATE_RETRY_TIMEOUT = 2000;
var gLocale = null;
#ifdef MOZ_B2G
var gVolumeMountLock = null;
XPCOMUtils.defineLazyGetter(this, "gExtStorage", function aus_gExtStorage() {
@ -1562,8 +1560,8 @@ function Update(update) {
this.isCompleteUpdate = false;
this.isOSUpdate = false;
this.showPrompt = false;
this.showSurvey = false;
this.showNeverForVersion = false;
this.unsupported = false;
this.channel = "default";
this.promptWaitTime = getPref("getIntPref", PREF_APP_UPDATE_PROMPTWAITTIME, 43200);
@ -1588,7 +1586,7 @@ function Update(update) {
this._patches.push(patch);
}
if (this._patches.length == 0 && !update.hasAttribute("unsupported"))
if (0 == this._patches.length)
throw Cr.NS_ERROR_ILLEGAL_VALUE;
// Fallback to the behavior prior to bug 530872 if the update does not have an
@ -1633,8 +1631,8 @@ function Update(update) {
if(!isNaN(attr.value))
this.promptWaitTime = parseInt(attr.value);
}
else if (attr.name == "unsupported")
this.unsupported = attr.value == "true";
else if (attr.name == "showSurvey")
this.showSurvey = attr.value == "true";
else if (attr.name == "version") {
// Prevent version from replacing displayVersion if displayVersion is
// present in the update xml.
@ -1773,6 +1771,7 @@ Update.prototype = {
update.setAttribute("showNeverForVersion", this.showNeverForVersion);
update.setAttribute("showPrompt", this.showPrompt);
update.setAttribute("promptWaitTime", this.promptWaitTime);
update.setAttribute("showSurvey", this.showSurvey);
update.setAttribute("type", this.type);
// for backwards compatibility in case the user downgrades
update.setAttribute("version", this.displayVersion);
@ -1790,8 +1789,6 @@ Update.prototype = {
update.setAttribute("previousAppVersion", this.previousAppVersion);
if (this.statusText)
update.setAttribute("statusText", this.statusText);
if (this.unsupported)
update.setAttribute("unsupported", this.unsupported);
updates.documentElement.appendChild(update);
for (var p in this._properties) {
@ -2379,9 +2376,6 @@ UpdateService.prototype = {
if (updates.length == 0)
return null;
if (updates.length == 1 && updates[0].unsupported)
return updates[0];
// Choose the newest of the available minor and major updates.
var majorUpdate = null;
var minorUpdate = null;
@ -2459,6 +2453,10 @@ UpdateService.prototype = {
return;
}
var update = this.selectUpdate(updates, updates.length);
if (!update)
return;
var updateEnabled = getPref("getBoolPref", PREF_APP_UPDATE_ENABLED, true);
if (!updateEnabled) {
LOG("UpdateService:_selectAndInstallUpdate - not prompting because " +
@ -2470,22 +2468,6 @@ UpdateService.prototype = {
return;
}
var update = this.selectUpdate(updates, updates.length);
if (!update) {
return;
}
if (update.unsupported) {
LOG("UpdateService:_selectAndInstallUpdate - update not supported for " +
"this system");
if (!getPref("getBoolPref", PREF_APP_UPDATE_NOTIFIEDUNSUPPORTED, false)) {
LOG("UpdateService:_selectAndInstallUpdate - notifying that the " +
"update is not supported for this system");
this._showPrompt(update);
}
return;
}
if (!gCanApplyUpdates) {
LOG("UpdateService:_selectAndInstallUpdate - the user is unable to " +
"apply updates... prompting");
@ -3319,7 +3301,7 @@ Checker.prototype = {
}
if (updatesElement.nodeName != "updates") {
LOG("Checker:_updates get - unexpected node name!");
LOG("Checker:updates get - unexpected node name!");
throw new Error("Unexpected node name, expected: updates, got: " +
updatesElement.nodeName);
}
@ -3336,7 +3318,7 @@ Checker.prototype = {
try {
var update = new Update(updateElement);
} catch (e) {
LOG("Checker:_updates get - invalid <update/>, ignoring...");
LOG("Checker:updates get - invalid <update/>, ignoring...");
continue;
}
update.serviceURL = this.getUpdateURL(this._forced);
@ -3396,7 +3378,7 @@ Checker.prototype = {
if (Services.prefs.prefHasUserValue(PREF_APP_UPDATE_BACKGROUNDERRORS))
Services.prefs.clearUserPref(PREF_APP_UPDATE_BACKGROUNDERRORS);
// Tell the callback about the updates
// Tell the Update Service about the updates
this._callback.onCheckComplete(event.target, updates, updates.length);
}
catch (e) {

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

@ -82,8 +82,8 @@ TimerManager.prototype = {
* See nsIObserver.idl
*/
observe: function TM_observe(aSubject, aTopic, aData) {
// Prevent setting the timer interval to a value of less than 30 seconds.
var minInterval = 30000;
// Prevent setting the timer interval to a value of less than 60 seconds.
var minInterval = 60000;
// Prevent setting the first timer interval to a value of less than 10
// seconds.
var minFirstInterval = 10000;

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

@ -81,8 +81,6 @@ MOCHITEST_CHROME_FILES += \
test_0141_notify_invalidCertAttrs_noUpdate.xul \
test_0142_notify_invalidCertAttrs_hasUpdate.xul \
test_0151_notify_backgroundCheckError.xul \
test_0161_check_unsupported.xul \
test_0162_notify_unsupported.xul \
test_0900_deprecatedUpdateFormat_minor.xul \
test_0901_deprecatedUpdateFormat_major.xul \
test_9999_cleanup.xul \

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

@ -1,50 +0,0 @@
<?xml version="1.0"?>
<!--
/* Any copyright is dedicated to the Public Domain.
* http://creativecommons.org/publicdomain/zero/1.0/
*/
-->
<?xml-stylesheet href="chrome://global/skin" type="text/css"?>
<?xml-stylesheet href="chrome://mochikit/content/tests/SimpleTest/test.css" type="text/css"?>
<window title="Test checking for updates when system is no longer supported (bug 843497)"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
onload="runTestDefault();">
<script type="application/javascript"
src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"/>
<script type="application/javascript"
src="utils.js"/>
<script type="application/javascript">
<![CDATA[
const TESTS = [ {
pageid: PAGEID_CHECKING
}, {
pageid: PAGEID_UNSUPPORTED,
buttonClick: "finish"
} ];
function runTest() {
debugDump("entering");
// When checking manually the unsupported page should still be shown even if
// it was shown previously.
Services.prefs.setBoolPref(PREF_APP_UPDATE_NOTIFIEDUNSUPPORTED, true);
let url = URL_UPDATE + "?unsupported=1";
setUpdateURLOverride(url);
gUP.checkForUpdates();
}
]]>
</script>
<body xmlns="http://www.w3.org/1999/xhtml">
<p id="display"></p>
<div id="content" style="display: none"></div>
<pre id="test"></pre>
</body>
</window>

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

@ -1,44 +0,0 @@
<?xml version="1.0"?>
<!--
/* Any copyright is dedicated to the Public Domain.
* http://creativecommons.org/publicdomain/zero/1.0/
*/
-->
<?xml-stylesheet href="chrome://global/skin" type="text/css"?>
<?xml-stylesheet href="chrome://mochikit/content/tests/SimpleTest/test.css" type="text/css"?>
<window title="Test notification of updates when system is no longer supported (bug 843497)"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
onload="runTestDefault();">
<script type="application/javascript"
src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"/>
<script type="application/javascript"
src="utils.js"/>
<script type="application/javascript">
<![CDATA[
const TESTS = [ {
pageid: PAGEID_UNSUPPORTED,
buttonClick: "finish"
} ];
function runTest() {
debugDump("entering");
let url = URL_UPDATE + "?unsupported=1";
setUpdateURLOverride(url);
gAUS.notify(null);
}
]]>
</script>
<body xmlns="http://www.w3.org/1999/xhtml">
<p id="display"></p>
<div id="content" style="display: none"></div>
<pre id="test"></pre>
</body>
</window>

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

@ -87,14 +87,6 @@ function handleRequest(aRequest, aResponse) {
return;
}
if (params.unsupported) {
aResponse.write(getRemoteUpdatesXMLString(" <update type=\"major\" " +
"unsupported=\"true\" " +
"detailsURL=\"" + URL_HOST +
"\"></update>\n"));
return;
}
var hash;
var patches = "";
if (!params.partialPatchOnly) {

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

@ -123,7 +123,6 @@ const PAGEID_CHECKING = "checking"; // Done
const PAGEID_PLUGIN_UPDATES = "pluginupdatesfound";
const PAGEID_NO_UPDATES_FOUND = "noupdatesfound"; // Done
const PAGEID_MANUAL_UPDATE = "manualUpdate"; // Tested on license load failure
const PAGEID_UNSUPPORTED = "unsupported"; // Done
const PAGEID_INCOMPAT_CHECK = "incompatibleCheck"; // Done
const PAGEID_FOUND_BASIC = "updatesfoundbasic"; // Done
const PAGEID_FOUND_BILLBOARD = "updatesfoundbillboard"; // Done
@ -554,7 +553,6 @@ function getExpectedButtonStates() {
return { extra1: { disabled: false, hidden: false } };
case PAGEID_NO_UPDATES_FOUND:
case PAGEID_MANUAL_UPDATE:
case PAGEID_UNSUPPORTED:
case PAGEID_ERRORS:
case PAGEID_ERROR_EXTRA:
case PAGEID_INSTALLED:
@ -964,10 +962,6 @@ function resetPrefs() {
Services.prefs.clearUserPref(PREF_APP_UPDATE_SHOW_INSTALLED_UI);
}
if (Services.prefs.prefHasUserValue(PREF_APP_UPDATE_NOTIFIEDUNSUPPORTED)) {
Services.prefs.clearUserPref(PREF_APP_UPDATE_NOTIFIEDUNSUPPORTED);
}
if (Services.prefs.prefHasUserValue(PREF_APP_UPDATE_LOG)) {
Services.prefs.clearUserPref(PREF_APP_UPDATE_LOG);
}

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

@ -26,7 +26,6 @@ const PREF_APP_UPDATE_METRO_ENABLED = "app.update.metro.enabled";
const PREF_APP_UPDATE_IDLETIME = "app.update.idletime";
const PREF_APP_UPDATE_LOG = "app.update.log";
const PREF_APP_UPDATE_NEVER_BRANCH = "app.update.never.";
const PREF_APP_UPDATE_NOTIFIEDUNSUPPORTED = "app.update.notifiedUnsupported";
const PREF_APP_UPDATE_PROMPTWAITTIME = "app.update.promptWaitTime";
const PREF_APP_UPDATE_SERVICE_ENABLED = "app.update.service.enabled";
const PREF_APP_UPDATE_SHOW_INSTALLED_UI = "app.update.showInstalledUI";

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

@ -46,21 +46,6 @@ wizardpage {
-moz-margin-end: 6px;
}
.inline-link {
color: -moz-nativehyperlinktext;
text-decoration: none;
}
.inline-link:hover {
text-decoration: underline;
}
/* Unsupported Page */
#unsupportedLabel, #unsupportedLinkLabel {
-moz-margin-start: 0;
-moz-padding-start: 0;
}
/* Update Found Basic Page */
#updateName, #updateFinishedName {
font-weight: bold;

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

@ -71,21 +71,6 @@ wizardpage {
-moz-margin-end: 6px;
}
.inline-link {
color: -moz-nativehyperlinktext;
text-decoration: none;
}
.inline-link:hover {
text-decoration: underline;
}
/* Unsupported Page */
#unsupportedLabel, #unsupportedLinkLabel {
-moz-margin-start: 0;
-moz-padding-start: 0;
}
/* Update Found Basic Page */
#updateName, #updateFinishedName {
font-weight: bold;

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

@ -46,21 +46,6 @@ wizardpage {
-moz-margin-end: 6px;
}
.inline-link {
color: -moz-nativehyperlinktext;
text-decoration: none;
}
.inline-link:hover {
text-decoration: underline;
}
/* Unsupported Page */
#unsupportedLabel, #unsupportedLinkLabel {
-moz-margin-start: 0;
-moz-padding-start: 0;
}
/* Update Found Basic Page */
#updateName, #updateFinishedName {
font-weight: bold;