forked from mirrors/gecko-dev
Backed out 2 changesets (bug 1812035, bug 1806501) for causing bc failures in ipc/glue/test/browser/browser_utility_audioDecodeCrash.js CLOSED TREE
Backed out changeset d7f1a776a986 (bug 1806501)
Backed out changeset 4a44daa59af4 (bug 1812035)
This commit is contained in:
parent
4c4d29b581
commit
b6d0a71936
9 changed files with 12 additions and 51 deletions
|
|
@ -2855,14 +2855,6 @@ BrowserGlue.prototype = {
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
{
|
|
||||||
// Starts the JSOracle process for ORB JavaScript validation, if it hasn't started already.
|
|
||||||
name: "start-orb-javascript-oracle",
|
|
||||||
task: () => {
|
|
||||||
ChromeUtils.ensureJSOracleStarted();
|
|
||||||
},
|
|
||||||
},
|
|
||||||
|
|
||||||
{
|
{
|
||||||
name: "browser-startup-idle-tasks-finished",
|
name: "browser-startup-idle-tasks-finished",
|
||||||
task: () => {
|
task: () => {
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,6 @@
|
||||||
|
|
||||||
#include "ChromeUtils.h"
|
#include "ChromeUtils.h"
|
||||||
|
|
||||||
#include "JSOracleParent.h"
|
|
||||||
#include "js/CharacterEncoding.h"
|
#include "js/CharacterEncoding.h"
|
||||||
#include "js/Object.h" // JS::GetClass
|
#include "js/Object.h" // JS::GetClass
|
||||||
#include "js/PropertyAndElement.h" // JS_DefineProperty, JS_DefinePropertyById, JS_Enumerate, JS_GetProperty, JS_GetPropertyById, JS_SetProperty, JS_SetPropertyById, JS::IdVector
|
#include "js/PropertyAndElement.h" // JS_DefineProperty, JS_DefinePropertyById, JS_Enumerate, JS_GetProperty, JS_GetPropertyById, JS_SetProperty, JS_SetPropertyById, JS::IdVector
|
||||||
|
|
@ -1763,16 +1762,4 @@ bool ChromeUtils::IsDarkBackground(GlobalObject&, Element& aElement) {
|
||||||
|
|
||||||
double ChromeUtils::DateNow(GlobalObject&) { return JS_Now() / 1000.0; }
|
double ChromeUtils::DateNow(GlobalObject&) { return JS_Now() / 1000.0; }
|
||||||
|
|
||||||
/* static */
|
|
||||||
void ChromeUtils::EnsureJSOracleStarted(GlobalObject&) {
|
|
||||||
JSOracleParent::WithJSOracle(
|
|
||||||
[](JSOracleParent* aParent) { MOZ_DIAGNOSTIC_ASSERT(aParent); });
|
|
||||||
}
|
|
||||||
|
|
||||||
/* static */
|
|
||||||
unsigned ChromeUtils::AliveUtilityProcesses(const GlobalObject&) {
|
|
||||||
const auto& utilityProcessManager =
|
|
||||||
mozilla::ipc::UtilityProcessManager::GetIfExists();
|
|
||||||
return utilityProcessManager ? utilityProcessManager->AliveProcesses() : 0;
|
|
||||||
}
|
|
||||||
} // namespace mozilla::dom
|
} // namespace mozilla::dom
|
||||||
|
|
|
||||||
|
|
@ -284,10 +284,6 @@ class ChromeUtils {
|
||||||
static bool IsDarkBackground(GlobalObject&, Element&);
|
static bool IsDarkBackground(GlobalObject&, Element&);
|
||||||
|
|
||||||
static double DateNow(GlobalObject&);
|
static double DateNow(GlobalObject&);
|
||||||
|
|
||||||
static void EnsureJSOracleStarted(GlobalObject&);
|
|
||||||
|
|
||||||
static unsigned AliveUtilityProcesses(const GlobalObject&);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace dom
|
} // namespace dom
|
||||||
|
|
|
||||||
|
|
@ -653,17 +653,6 @@ partial namespace ChromeUtils {
|
||||||
* Returns whether the background of the element is dark.
|
* Returns whether the background of the element is dark.
|
||||||
*/
|
*/
|
||||||
boolean isDarkBackground(Element element);
|
boolean isDarkBackground(Element element);
|
||||||
|
|
||||||
/**
|
|
||||||
* Starts the JSOracle process for ORB JavaScript validation, if it hasn't started already.
|
|
||||||
*/
|
|
||||||
undefined ensureJSOracleStarted();
|
|
||||||
|
|
||||||
/**
|
|
||||||
* The number of currently alive utility processes.
|
|
||||||
*/
|
|
||||||
[ChromeOnly]
|
|
||||||
readonly attribute unsigned long aliveUtilityProcesses;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
|
||||||
|
|
@ -130,8 +130,6 @@ class UtilityProcessManager final : public UtilityProcessHost::Listener {
|
||||||
// Shutdown all utility processes
|
// Shutdown all utility processes
|
||||||
void CleanShutdownAllProcesses();
|
void CleanShutdownAllProcesses();
|
||||||
|
|
||||||
uint16_t AliveProcesses();
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
~UtilityProcessManager();
|
~UtilityProcessManager();
|
||||||
|
|
||||||
|
|
@ -198,6 +196,7 @@ class UtilityProcessManager final : public UtilityProcessHost::Listener {
|
||||||
|
|
||||||
RefPtr<ProcessFields> GetProcess(SandboxingKind);
|
RefPtr<ProcessFields> GetProcess(SandboxingKind);
|
||||||
bool NoMoreProcesses();
|
bool NoMoreProcesses();
|
||||||
|
uint16_t AliveProcesses();
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace ipc
|
} // namespace ipc
|
||||||
|
|
|
||||||
|
|
@ -132,7 +132,7 @@
|
||||||
socketProcessRunning = 1;
|
socketProcessRunning = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
let m2 = (vsizes.length == (4 + socketProcessRunning + ChromeUtils.aliveUtilityProcesses) &&
|
let m2 = (vsizes.length == (4 + socketProcessRunning) &&
|
||||||
endOfBrowsers.length == 3);
|
endOfBrowsers.length == 3);
|
||||||
ok(m2, "three content processes present in loaded data");
|
ok(m2, "three content processes present in loaded data");
|
||||||
good = good && !!m2;
|
good = good && !!m2;
|
||||||
|
|
|
||||||
|
|
@ -230,7 +230,7 @@
|
||||||
if (SpecialPowers.Services.io.socketProcessLaunched) {
|
if (SpecialPowers.Services.io.socketProcessLaunched) {
|
||||||
socketProcessRunning = 1;
|
socketProcessRunning = 1;
|
||||||
}
|
}
|
||||||
is(aAmounts.length, (1 + socketProcessRunning + ChromeUtils.aliveUtilityProcesses),
|
ok(aAmounts.length == (1 + socketProcessRunning),
|
||||||
aName + " has " + aAmounts.length + " report");
|
aName + " has " + aAmounts.length + " report");
|
||||||
let n = aAmounts[0];
|
let n = aAmounts[0];
|
||||||
if (!aCanBeUnreasonable) {
|
if (!aCanBeUnreasonable) {
|
||||||
|
|
|
||||||
|
|
@ -22,7 +22,7 @@
|
||||||
socketProcessRunning = 1;
|
socketProcessRunning = 1;
|
||||||
}
|
}
|
||||||
let numToOpen = 3;
|
let numToOpen = 3;
|
||||||
const expectedNumRemotes = numToOpen + socketProcessRunning + ChromeUtils.aliveUtilityProcesses;
|
const expectedNumRemotes = numToOpen + socketProcessRunning;
|
||||||
let numReady = 0;
|
let numReady = 0;
|
||||||
|
|
||||||
// Create some remote processes, and set up message-passing so that
|
// Create some remote processes, and set up message-passing so that
|
||||||
|
|
@ -89,7 +89,7 @@
|
||||||
} else {
|
} else {
|
||||||
ok(processes[i].startsWith("Browser (") || processes[i].startsWith("Web Content (") ||
|
ok(processes[i].startsWith("Browser (") || processes[i].startsWith("Web Content (") ||
|
||||||
(processes[i].startsWith("Socket (") && socketProcessRunning)
|
(processes[i].startsWith("Socket (") && socketProcessRunning)
|
||||||
|| processes[i].startsWith("web (") || processes[i].startsWith("Utility ("),
|
|| processes[i].startsWith("web ("),
|
||||||
"correct non-empty process name prefix: " + processes[i]);
|
"correct non-empty process name prefix: " + processes[i]);
|
||||||
numNonEmptyProcesses++;
|
numNonEmptyProcesses++;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1870,15 +1870,13 @@ nsresult nsMemoryReporterManager::StartGettingReports() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!IsRegistrationBlocked()) {
|
if (RefPtr<UtilityProcessManager> utility =
|
||||||
if (RefPtr<UtilityProcessManager> utility =
|
UtilityProcessManager::GetIfExists()) {
|
||||||
UtilityProcessManager::GetIfExists()) {
|
for (RefPtr<UtilityProcessParent>& parent :
|
||||||
for (RefPtr<UtilityProcessParent>& parent :
|
utility->GetAllProcessesProcessParent()) {
|
||||||
utility->GetAllProcessesProcessParent()) {
|
if (RefPtr<MemoryReportingProcess> proc =
|
||||||
if (RefPtr<MemoryReportingProcess> proc =
|
utility->GetProcessMemoryReporter(parent)) {
|
||||||
utility->GetProcessMemoryReporter(parent)) {
|
s->mChildrenPending.AppendElement(proc.forget());
|
||||||
s->mChildrenPending.AppendElement(proc.forget());
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue