Backed out 4 changesets (bug 1366808) for Windows GPU leakchecks on a CLOSED TREE

Backed out changeset 23f60e5acaa2 (bug 1366808)
Backed out changeset bf2262b6aca8 (bug 1366808)
Backed out changeset 1fc82af3a155 (bug 1366808)
Backed out changeset 0649f0d9884b (bug 1366808)
This commit is contained in:
Andreea Pavel 2018-04-10 05:11:36 +03:00
Родитель 618da07cd6
Коммит 26f640b36b
28 изменённых файлов: 55 добавлений и 303 удалений

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

@ -1,33 +0,0 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
/* eslint-env mozilla/frame-script */
ChromeUtils.import("resource://gre/modules/Services.jsm");
var AboutRestartRequired = {
/* Only do autofocus if we're the toplevel frame; otherwise we
don't want to call attention to ourselves! The key part is
that autofocus happens on insertion into the tree, so we
can remove the button, add @autofocus, and reinsert the
button.
*/
addAutofocus() {
if (window.top == window) {
var button = document.getElementById("restart");
var parent = button.parentNode;
button.remove();
button.setAttribute("autofocus", "true");
parent.insertAdjacentElement("afterbegin", button);
}
},
restart() {
Services.startup.quit(Ci.nsIAppStartup.eRestart |
Ci.nsIAppStartup.eAttemptQuit);
},
init() {
this.addAutofocus();
},
};
AboutRestartRequired.init();

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

@ -1,56 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<!DOCTYPE html [
<!ENTITY % htmlDTD
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"DTD/xhtml1-strict.dtd">
%htmlDTD;
<!ENTITY % globalDTD
SYSTEM "chrome://global/locale/global.dtd">
%globalDTD;
<!ENTITY % brandDTD SYSTEM "chrome://branding/locale/brand.dtd" >
%brandDTD;
<!ENTITY % restartRequiredDTD
SYSTEM "chrome://browser/locale/aboutRestartRequired.dtd">
%restartRequiredDTD;
]>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>&restartRequired.title;</title>
<link rel="stylesheet" type="text/css" media="all"
href="chrome://browser/skin/aboutRestartRequired.css"/>
<!-- If the location of the favicon is changed here, the
FAVICON_ERRORPAGE_URL symbol in
toolkit/components/places/src/nsFaviconService.h should be updated. -->
<link rel="icon" type="image/png" id="favicon"
href="chrome://global/skin/icons/warning-16.png"/>
</head>
<body dir="&locale.dir;">
<!-- PAGE CONTAINER (for styling purposes only) -->
<div id="errorPageContainer">
<div id="text-container">
<div id="title">
<h1 id="title-text">&restartRequired.header;</h1>
</div>
<div id="errorLongContent">
<div id="errorLongDesc">&restartRequired.description;</div>
</div>
</div>
<!-- Restart Button -->
<div id="restartButtonContainer" class="button-container">
<button id="restart" class="primary" autocomplete="off"
onclick="AboutRestartRequired.restart();">
&restartRequired.label;
</button>
</div>
</div>
</body>
<script type="text/javascript"
src="chrome://browser/content/aboutRestartRequired.js"/>
</html>

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

@ -4053,7 +4053,7 @@ window._gBrowser = {
let tab = this.getTabForBrowser(browser);
if (this.selectedBrowser == browser) {
TabCrashHandler.onSelectedBrowserCrash(browser, false);
TabCrashHandler.onSelectedBrowserCrash(browser);
} else {
this.updateBrowserRemoteness(browser, false);
SessionStore.reviveCrashedTab(tab);
@ -4063,17 +4063,6 @@ window._gBrowser = {
this.setIcon(tab, icon, browser.contentPrincipal, browser.contentRequestContextID);
});
this.addEventListener("oop-browser-buildid-mismatch", (event) => {
if (!event.isTrusted)
return;
let browser = event.originalTarget;
if (this.selectedBrowser == browser) {
TabCrashHandler.onSelectedBrowserCrash(browser, true);
}
});
this.addEventListener("DOMAudioPlaybackStarted", (event) => {
var tab = this.getTabFromAudioEvent(event);
if (!tab) {

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

@ -39,8 +39,6 @@ browser.jar:
content/browser/illustrations/error-server-not-found.svg (content/illustrations/error-server-not-found.svg)
content/browser/illustrations/error-malformed-url.svg (content/illustrations/error-malformed-url.svg)
content/browser/aboutNetError.xhtml (content/aboutNetError.xhtml)
content/browser/aboutRestartRequired.js (content/aboutRestartRequired.js)
content/browser/aboutRestartRequired.xhtml (content/aboutRestartRequired.xhtml)
content/browser/aboutRobots-icon.png (content/aboutRobots-icon.png)
content/browser/aboutRobots-widget-left.png (content/aboutRobots-widget-left.png)
content/browser/aboutTabCrashed.css (content/aboutTabCrashed.css)

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

@ -99,8 +99,6 @@ static const RedirEntry kRedirMap[] = {
nsIAboutModule::ALLOW_SCRIPT |
nsIAboutModule::URI_MUST_LOAD_IN_CHILD |
nsIAboutModule::HIDE_FROM_ABOUTABOUT },
{ "restartrequired", "chrome://browser/content/aboutRestartRequired.xhtml",
nsIAboutModule::ALLOW_SCRIPT },
};
static nsAutoCString

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

@ -106,7 +106,6 @@ static const mozilla::Module::ContractIDEntry kBrowserContracts[] = {
{ NS_ABOUT_MODULE_CONTRACTID_PREFIX "preferences", &kNS_BROWSER_ABOUT_REDIRECTOR_CID },
{ NS_ABOUT_MODULE_CONTRACTID_PREFIX "downloads", &kNS_BROWSER_ABOUT_REDIRECTOR_CID },
{ NS_ABOUT_MODULE_CONTRACTID_PREFIX "reader", &kNS_BROWSER_ABOUT_REDIRECTOR_CID },
{ NS_ABOUT_MODULE_CONTRACTID_PREFIX "restartrequired", &kNS_BROWSER_ABOUT_REDIRECTOR_CID },
#if defined(XP_WIN)
{ NS_IEHISTORYENUMERATOR_CONTRACTID, &kNS_WINIEHISTORYENUMERATOR_CID },
#elif defined(XP_MACOSX)

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

@ -1,13 +0,0 @@
<!-- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<!ENTITY restartRequired.title "Restart Required">
<!ENTITY restartRequired.header "Sorry. We just need to do one small thing to keep going.">
<!ENTITY restartRequired.description "
<p>We have just installed an update in the background. Click Restart Firefox to finish applying it.</p>
<p>We will restore all your pages, windows and tabs afterwards, so you can be on your way quickly.</p>
">
<!ENTITY restartRequired.label "Restart Firefox">

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

@ -18,7 +18,6 @@
locale/browser/aboutRobots.dtd (%chrome/browser/aboutRobots.dtd)
locale/browser/aboutHome.dtd (%chrome/browser/aboutHome.dtd)
locale/browser/accounts.properties (%chrome/browser/accounts.properties)
locale/browser/aboutRestartRequired.dtd (%chrome/browser/aboutRestartRequired.dtd)
locale/browser/aboutSearchReset.dtd (%chrome/browser/aboutSearchReset.dtd)
locale/browser/aboutSessionRestore.dtd (%chrome/browser/aboutSessionRestore.dtd)
locale/browser/aboutTabCrashed.dtd (%chrome/browser/aboutTabCrashed.dtd)

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

@ -229,13 +229,9 @@ var TabCrashHandler = {
let sentBrowser = false;
for (let weakBrowser of browserQueue) {
let browser = weakBrowser.browser.get();
let browser = weakBrowser.get();
if (browser) {
if (weakBrowser.restartRequired) {
this.sendToRestartRequiredPage(browser);
} else {
this.sendToTabCrashedPage(browser);
}
this.sendToTabCrashedPage(browser);
sentBrowser = true;
}
}
@ -250,10 +246,8 @@ var TabCrashHandler = {
*
* @param browser (<xul:browser>)
* The selected browser that just crashed.
* @param restartRequired (bool)
* Whether or not a browser restart is required to recover.
*/
onSelectedBrowserCrash(browser, restartRequired) {
onSelectedBrowserCrash(browser) {
if (!browser.isRemoteBrowser) {
Cu.reportError("Selected crashed browser is not remote.");
return;
@ -275,8 +269,7 @@ var TabCrashHandler = {
// this queue will be flushed. The weak reference is to avoid
// leaking browsers in case anything goes wrong during this
// teardown process.
browserQueue.push({browser: Cu.getWeakReference(browser),
restartRequired});
browserQueue.push(Cu.getWeakReference(browser));
},
/**
@ -319,23 +312,6 @@ var TabCrashHandler = {
return false;
},
sendToRestartRequiredPage(browser) {
let uri = browser.currentURI;
let gBrowser = browser.ownerGlobal.gBrowser;
let tab = gBrowser.getTabForBrowser(browser);
// The restart required page is non-remote by default.
gBrowser.updateBrowserRemoteness(browser, false);
browser.docShell.displayLoadError(Cr.NS_ERROR_BUILDID_MISMATCH, uri, null);
tab.setAttribute("crashed", true);
// Make sure to only count once even if there are multiple windows
// that will all show about:restartrequired.
if (this._crashedTabCount == 1) {
Services.telemetry.getHistogramById("FX_CONTENT_BUILDID_MISMATCH").add(1);
}
},
/**
* We show a special page to users when a normal browser tab has crashed.
* This method should be called to send a browser to that page once the

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

@ -1,41 +0,0 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
@import url("chrome://browser/skin/error-pages.css");
.illustrated #errorPageContainer {
min-height: 300px;
display: flex;
flex-direction: column;
background-position: left center;
}
body[dir="rtl"] #errorPageContainer {
background-position: right center;
}
#header {
background: none;
padding-inline-start: 0;
margin-inline-start: 0;
}
#text-container {
margin: auto;
padding-inline-start: 38%;
}
#errorPageContainer {
min-height: 350px;
display: flex;
flex-direction: column;
background-position: left center;
background-repeat: no-repeat;
background-size: 38%;
background-image: url("chrome://browser/content/illustrations/error-connection-failure.svg");
}
#restart {
margin-top: 1.2em;
}

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

@ -10,7 +10,6 @@
skin/classic/browser/aboutNetError.css (../shared/aboutNetError.css)
skin/classic/browser/blockedSite.css (../shared/blockedSite.css)
skin/classic/browser/error-pages.css (../shared/error-pages.css)
skin/classic/browser/aboutRestartRequired.css (../shared/aboutRestartRequired.css)
* skin/classic/browser/aboutSessionRestore.css (../shared/aboutSessionRestore.css)
skin/classic/browser/aboutTabCrashed.css (../shared/aboutTabCrashed.css)
skin/classic/browser/aboutWelcomeBack.css (../shared/aboutWelcomeBack.css)

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

@ -4745,16 +4745,6 @@ nsDocShell::DisplayLoadError(nsresult aError, nsIURI* aURI,
element->GetAttribute(NS_LITERAL_STRING("crashedPageTitle"), messageStr);
}
// DisplayLoadError requires a non-empty messageStr to proceed and call
// LoadErrorPage. If the page doesn't have a title, we will use a blank
// space which will be trimmed and thus treated as empty by the front-end.
if (messageStr.IsEmpty()) {
messageStr.AssignLiteral(u" ");
}
} else if (NS_ERROR_BUILDID_MISMATCH == aError) {
errorPage.AssignLiteral("restartrequired");
error = "restartrequired";
// DisplayLoadError requires a non-empty messageStr to proceed and call
// LoadErrorPage. If the page doesn't have a title, we will use a blank
// space which will be trimmed and thus treated as empty by the front-end.

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

@ -607,7 +607,6 @@ ContentChild::RecvSetXPCOMProcessAttributes(const XPCOMInitData& aXPCOMInit,
bool
ContentChild::Init(MessageLoop* aIOLoop,
base::ProcessId aParentPid,
const char* aParentBuildID,
IPC::Channel* aChannel,
uint64_t aChildID,
bool aIsForBrowser)
@ -676,15 +675,10 @@ ContentChild::Init(MessageLoop* aIOLoop,
GetIPCChannel()->SetChannelFlags(MessageChannel::REQUIRE_A11Y_REENTRY);
#endif
// This must be checked before any IPDL message, which may hit sentinel
// This must be sent before any IPDL message, which may hit sentinel
// errors due to parent and content processes having different
// versions.
MessageChannel* channel = GetIPCChannel();
if (channel && !channel->SendBuildIDsMatchMessage(aParentBuildID)) {
// We need to quit this process if the buildID doesn't match the parent's.
// This can occur when an update occurred in the background.
ProcessChild::QuickExit();
}
GetIPCChannel()->SendBuildID();
#ifdef MOZ_X11
if (!gfxPlatform::IsHeadless()) {

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

@ -120,7 +120,6 @@ public:
bool Init(MessageLoop* aIOLoop,
base::ProcessId aParentPid,
const char* aParentBuildID,
IPC::Channel* aChannel,
uint64_t aChildID,
bool aIsForBrowser);

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

@ -2055,10 +2055,6 @@ ContentParent::LaunchSubprocess(ProcessPriority aInitialPriority /* = PROCESS_PR
extraArgs.push_back("-safeMode");
}
nsCString parentBuildID(mozilla::PlatformBuildID());
extraArgs.push_back("-parentBuildID");
extraArgs.push_back(parentBuildID.get());
SetOtherProcessId(kInvalidProcessId, ProcessIdState::ePending);
if (!mSubprocess->Launch(extraArgs)) {
NS_ERROR("failed to launch child in the parent");

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

@ -99,7 +99,6 @@ ContentProcess::Init(int aArgc, char* aArgv[])
Maybe<base::SharedMemoryHandle> prefsHandle;
Maybe<size_t> prefsLen;
Maybe<const char*> schedulerPrefs;
Maybe<const char*> parentBuildID;
#if defined(XP_MACOSX) && defined(MOZ_CONTENT_SANDBOX)
nsCOMPtr<nsIFile> profileDir;
#endif
@ -169,12 +168,6 @@ ContentProcess::Init(int aArgc, char* aArgv[])
} else if (strcmp(aArgv[i], "-safeMode") == 0) {
gSafeMode = true;
} else if (strcmp(aArgv[i], "-parentBuildID") == 0) {
if (++i == aArgc) {
return false;
}
parentBuildID = Some(aArgv[i]);
#if defined(XP_MACOSX) && defined(MOZ_CONTENT_SANDBOX)
} else if (strcmp(aArgv[i], "-profile") == 0) {
if (++i == aArgc) {
@ -204,8 +197,7 @@ ContentProcess::Init(int aArgc, char* aArgv[])
isForBrowser.isNothing() ||
prefsHandle.isNothing() ||
prefsLen.isNothing() ||
schedulerPrefs.isNothing() ||
parentBuildID.isNothing()) {
schedulerPrefs.isNothing()) {
return false;
}
@ -225,7 +217,6 @@ ContentProcess::Init(int aArgc, char* aArgv[])
Scheduler::SetPrefs(*schedulerPrefs);
mContent.Init(IOThreadChild::message_loop(),
ParentPid(),
*parentBuildID,
IOThreadChild::channel(),
*childID,
*isForBrowser);

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

@ -468,16 +468,10 @@ TabParent::ActorDestroy(ActorDestroyReason why)
// and created a new frameloader. If so, we don't fire the event,
// since the frameloader owner has clearly moved on.
if (currentFrameLoader == frameLoader) {
MessageChannel* channel = GetIPCChannel();
if (channel && !channel->DoBuildIDsMatch()) {
nsContentUtils::DispatchTrustedEvent(
frameElement->OwnerDoc(), frameElement,
NS_LITERAL_STRING("oop-browser-buildid-mismatch"), true, true);
} else {
nsContentUtils::DispatchTrustedEvent(
frameElement->OwnerDoc(), frameElement,
NS_LITERAL_STRING("oop-browser-crashed"), true, true);
}
nsContentUtils::DispatchTrustedEvent(frameElement->OwnerDoc(), frameElement,
NS_LITERAL_STRING("oop-browser-crashed"),
true, true);
}
}
}

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

@ -84,7 +84,6 @@ GPUParent::GetSingleton()
bool
GPUParent::Init(base::ProcessId aParentPid,
const char* aParentBuildID,
MessageLoop* aIOLoop,
IPC::Channel* aChannel)
{
@ -101,15 +100,10 @@ GPUParent::Init(base::ProcessId aParentPid,
nsDebugImpl::SetMultiprocessMode("GPU");
// This must be checked before any IPDL message, which may hit sentinel
// This must be sent before any IPDL message, which may hit sentinel
// errors due to parent and content processes having different
// versions.
MessageChannel* channel = GetIPCChannel();
if (channel && !channel->SendBuildIDsMatchMessage(aParentBuildID)) {
// We need to quit this process if the buildID doesn't match the parent's.
// This can occur when an update occurred in the background.
ProcessChild::QuickExit();
}
GetIPCChannel()->SendBuildID();
// Init crash reporter support.
CrashReporterClient::InitSingleton(this);

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

@ -27,7 +27,6 @@ public:
static GPUParent* GetSingleton();
bool Init(base::ProcessId aParentPid,
const char* aParentBuildID,
MessageLoop* aIOLoop,
IPC::Channel* aChannel);
void NotifyDeviceReset();

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

@ -31,15 +31,8 @@ GPUProcessImpl::Init(int aArgc, char* aArgv[])
#if defined(MOZ_SANDBOX) && defined(OS_WIN)
mozilla::SandboxTarget::Instance()->StartSandbox();
#endif
char* parentBuildID = nullptr;
for (int idx = aArgc; idx > 0; idx--) {
if (!strcmp(aArgv[idx], "-parentBuildID")) {
parentBuildID = aArgv[idx + 1];
}
}
return mGPU.Init(ParentPid(),
parentBuildID,
IOThreadChild::message_loop(),
IOThreadChild::channel());
}

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

@ -533,8 +533,7 @@ MessageChannel::MessageChannel(const char* aName,
mFlags(REQUIRE_DEFAULT),
mPeerPidSet(false),
mPeerPid(-1),
mIsPostponingSends(false),
mBuildIDsConfirmedMatch(false)
mIsPostponingSends(false)
{
MOZ_COUNT_CTOR(ipc::MessageChannel);
@ -1001,38 +1000,29 @@ MessageChannel::RejectPendingResponsesForActor(ActorIdType aActorId)
}
}
class BuildIDsMatchMessage : public IPC::Message
class BuildIDMessage : public IPC::Message
{
public:
BuildIDsMatchMessage()
: IPC::Message(MSG_ROUTING_NONE, BUILD_IDS_MATCH_MESSAGE_TYPE)
BuildIDMessage()
: IPC::Message(MSG_ROUTING_NONE, BUILD_ID_MESSAGE_TYPE)
{
}
void Log(const std::string& aPrefix, FILE* aOutf) const
{
fputs("(special `Build IDs match' message)", aOutf);
fputs("(special `Build ID' message)", aOutf);
}
};
// Send the parent a special async message to confirm when the parent and child
// are of the same buildID. Skips sending the message and returns false if the
// buildIDs don't match. This is a minor variation on
// MessageChannel::Send(Message* aMsg).
bool
MessageChannel::SendBuildIDsMatchMessage(const char* aParentBuildID)
// Send the parent a special async message to allow it to detect if
// this process is running a different build. This is a minor
// variation on MessageChannel::Send(Message* aMsg).
void
MessageChannel::SendBuildID()
{
MOZ_ASSERT(!XRE_IsParentProcess());
nsCString parentBuildID(aParentBuildID);
nsCString childBuildID(mozilla::PlatformBuildID());
if (parentBuildID != childBuildID) {
// The build IDs didn't match, usually because an update occurred in the
// background.
return false;
}
nsAutoPtr<BuildIDsMatchMessage> msg(new BuildIDsMatchMessage());
nsAutoPtr<BuildIDMessage> msg(new BuildIDMessage());
nsCString buildID(mozilla::PlatformBuildID());
IPC::WriteParam(msg, buildID);
MOZ_RELEASE_ASSERT(!msg->is_sync());
MOZ_RELEASE_ASSERT(msg->nested_level() != IPC::Message::NESTED_INSIDE_SYNC);
@ -1044,10 +1034,9 @@ MessageChannel::SendBuildIDsMatchMessage(const char* aParentBuildID)
MonitorAutoLock lock(*mMonitor);
if (!Connected()) {
ReportConnectionError("MessageChannel", msg);
return false;
return;
}
mLink->SendMessage(msg.forget());
return true;
}
class CancelMessage : public IPC::Message
@ -1066,6 +1055,22 @@ public:
}
};
MOZ_NEVER_INLINE static void
CheckChildProcessBuildID(const IPC::Message& aMsg)
{
MOZ_ASSERT(XRE_IsParentProcess());
nsCString childBuildID;
PickleIterator msgIter(aMsg);
MOZ_ALWAYS_TRUE(IPC::ReadParam(&aMsg, &msgIter, &childBuildID));
aMsg.EndRead(msgIter);
nsCString parentBuildID(mozilla::PlatformBuildID());
// This assert can fail if the child process has been updated
// to a newer version while the parent process was running.
MOZ_RELEASE_ASSERT(parentBuildID == childBuildID);
}
bool
MessageChannel::MaybeInterceptSpecialIOMessage(const Message& aMsg)
{
@ -1087,9 +1092,9 @@ MessageChannel::MaybeInterceptSpecialIOMessage(const Message& aMsg)
CancelTransaction(aMsg.transaction_id());
NotifyWorkerThread();
return true;
} else if (BUILD_IDS_MATCH_MESSAGE_TYPE == aMsg.type()) {
IPC_LOG("Build IDs match message");
mBuildIDsConfirmedMatch = true;
} else if (BUILD_ID_MESSAGE_TYPE == aMsg.type()) {
IPC_LOG("Build ID message");
CheckChildProcessBuildID(aMsg);
return true;
}
}

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

@ -238,8 +238,7 @@ private:
gUnresolvedResponses++;
}
bool SendBuildIDsMatchMessage(const char* aParentBuildI);
bool DoBuildIDsMatch() { return mBuildIDsConfirmedMatch; }
void SendBuildID();
// Asynchronously deliver a message back to this side of the
// channel
@ -855,8 +854,6 @@ private:
// held in a queue until another thread deems it is safe to send them.
bool mIsPostponingSends;
std::vector<UniquePtr<Message>> mPostponedSends;
bool mBuildIDsConfirmedMatch;
};
void

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

@ -49,13 +49,12 @@ namespace {
// protocol 0. Oops! We can get away with this until protocol 0
// starts approaching its 65,536th message.
enum {
BUILD_IDS_MATCH_MESSAGE_TYPE = kuint16max - 8,
BUILD_ID_MESSAGE_TYPE = kuint16max - 7, // unused
CHANNEL_OPENED_MESSAGE_TYPE = kuint16max - 6,
SHMEM_DESTROYED_MESSAGE_TYPE = kuint16max - 5,
SHMEM_CREATED_MESSAGE_TYPE = kuint16max - 4,
GOODBYE_MESSAGE_TYPE = kuint16max - 3,
CANCEL_MESSAGE_TYPE = kuint16max - 2,
BUILD_ID_MESSAGE_TYPE = kuint16max - 7,
CHANNEL_OPENED_MESSAGE_TYPE = kuint16max - 6,
SHMEM_DESTROYED_MESSAGE_TYPE = kuint16max - 5,
SHMEM_CREATED_MESSAGE_TYPE = kuint16max - 4,
GOODBYE_MESSAGE_TYPE = kuint16max - 3,
CANCEL_MESSAGE_TYPE = kuint16max - 2,
// kuint16max - 1 is used by ipc_channel.h.
};

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

@ -220,7 +220,6 @@ XPC_MSG_DEF(NS_ERROR_GFX_PRINTER_DOC_IS_BUSY , "Cannot print this docum
/* Codes related to content */
XPC_MSG_DEF(NS_ERROR_CONTENT_CRASHED , "The process that hosted this content has crashed.")
XPC_MSG_DEF(NS_ERROR_BUILDID_MISMATCH , "The process that hosted this content did not have the same buildID as the parent.")
/* Codes for the JS-implemented Push DOM API. These can be removed as part of bug 1252660. */
XPC_MSG_DEF(NS_ERROR_DOM_PUSH_INVALID_KEY_ERR , "Invalid raw ECDSA P-256 public key.")

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

@ -205,7 +205,7 @@ interface nsILoadInfo : nsISupports
/**
* Load an error page, it should be one of following : about:neterror,
* about:certerror, about:blocked, about:tabcrashed or about:restartrequired.
* about:certerror, about:blocked, or about:tabcrashed.
*/
const unsigned long SEC_LOAD_ERROR_PAGE = (1<<13);

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

@ -12563,15 +12563,6 @@
"kind": "count",
"releaseChannelCollection": "opt-out",
"description": "Counts the number of times that about:tabcrashed was unloaded without submitting."
},
"FX_CONTENT_BUILDID_MISMATCH": {
"record_in_processes": ["main"],
"alert_emails": ["spohl@mozilla.com"],
"bug_numbers": [1366808],
"expires_in_version": "never",
"kind": "count",
"releaseChannelCollection": "opt-out",
"description": "Counts the number of times that about:restartrequired appeared."
},
"D3D9_COMPOSITING_FAILURE_ID": {
"record_in_processes": ["main", "content"],

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

@ -1636,7 +1636,6 @@
"FX_CONTENT_CRASH_DUMP_UNAVAILABLE",
"FX_CONTENT_CRASH_NOT_SUBMITTED",
"FX_CONTENT_CRASH_PRESENTED",
"FX_CONTENT_BUILDID_MISMATCH",
"FX_SESSION_RESTORE_SEND_UPDATE_CAUSED_OOM",
"FX_TOUCH_USED",
"GEOLOCATION_ERROR",

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

@ -868,9 +868,6 @@ with modules["CONTENT"]:
errors["NS_ERROR_XBL_BLOCKED"] = FAILURE(15)
# Error code for when the content process crashed
errors["NS_ERROR_CONTENT_CRASHED"] = FAILURE(16)
# Error code for when the content process had a different buildID than the
# parent
errors["NS_ERROR_BUILDID_MISMATCH"] = FAILURE(17)
# XXX this is not really used
errors["NS_HTML_STYLE_PROPERTY_NOT_THERE"] = SUCCESS(2)