#659: tuneups and edgecases

This commit is contained in:
Cameron Kaiser 2023-04-19 22:34:54 -07:00
parent 2f7da4e25a
commit 17b23692fe
1 changed files with 16 additions and 9 deletions

View File

@ -1592,22 +1592,29 @@ CSSParserImpl::InitScanner(nsCSSScanner& aScanner,
mSheetPrincipal = aSheetPrincipal;
mHavePushBack = false;
// TenFourFox issue 659
mHostCSSGridOK = false;
if (MOZ_LIKELY(mBaseURI)) {
nsCString host;
bool isChrome;
nsresult rv = mBaseURI->GetHost(host);
if (NS_SUCCEEDED(rv)) {
nsCString pref;
// Never turn on grid for browser chrome.
nsresult rv = mBaseURI->SchemeIs("chrome", &isChrome);
if (NS_SUCCEEDED(rv) && !isChrome) {
// Get host and check pref.
rv = mBaseURI->GetHost(host);
if (NS_SUCCEEDED(rv) && !host.IsEmpty()) {
nsCString pref;
pref.AssignLiteral("layout.css.grid.host.");
pref.SetCapacity(pref.Length() + host.Length());
pref += host;
mHostCSSGridOK = Preferences::GetBool(pref.get(), false);
pref.AssignLiteral("layout.css.grid.host.");
pref.SetCapacity(pref.Length() + host.Length());
pref += host;
mHostCSSGridOK = Preferences::GetBool(pref.get(), false);
#if DEBUG
if (mHostCSSGridOK)
fprintf(stderr, "CSS grid enabled for %s\n", pref.get());
if (mHostCSSGridOK)
fprintf(stderr, "CSS grid enabled for %s\n", pref.get());
#endif
}
}
}
}