From d2842daa2df82f9c613d8f73fb1fc7b31f944749 Mon Sep 17 00:00:00 2001 From: Bobby Holley Date: Thu, 17 Aug 2017 09:24:28 -0700 Subject: [PATCH] Avoid creating a stylo thread pool in e10s parent processes. MozReview-Commit-ID: LW92yNDKZf4 --- components/style/gecko/generated/bindings.rs | 3 +++ components/style/gecko/global_style_data.rs | 3 ++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/components/style/gecko/generated/bindings.rs b/components/style/gecko/generated/bindings.rs index d4b7e94326a..69fbfda33f7 100644 --- a/components/style/gecko/generated/bindings.rs +++ b/components/style/gecko/generated/bindings.rs @@ -1568,6 +1568,9 @@ extern "C" { extern "C" { pub fn Gecko_RegisterNamespace(ns: *mut nsIAtom) -> i32; } +extern "C" { + pub fn Gecko_ShouldCreateStyleThreadPool() -> bool; +} extern "C" { pub fn Gecko_Construct_Default_nsStyleFont(ptr: *mut nsStyleFont, pres_context: diff --git a/components/style/gecko/global_style_data.rs b/components/style/gecko/global_style_data.rs index f396a4ee451..b5698e02193 100644 --- a/components/style/gecko/global_style_data.rs +++ b/components/style/gecko/global_style_data.rs @@ -5,6 +5,7 @@ //! Global style data use context::StyleSystemOptions; +use gecko_bindings::bindings; use gecko_bindings::bindings::{Gecko_RegisterProfilerThread, Gecko_UnregisterProfilerThread}; use gecko_bindings::bindings::Gecko_SetJemallocThreadLocalArena; use num_cpus; @@ -78,7 +79,7 @@ lazy_static! { } } - let pool = if num_threads < 1 { + let pool = if num_threads < 1 || unsafe { !bindings::Gecko_ShouldCreateStyleThreadPool() } { None } else { let configuration = rayon::Configuration::new()