mirror of
https://github.com/mozilla/gecko-dev.git
synced 2025-03-02 22:37:50 +00:00
Bug 1326457: Remove redundant check for eCSSKeyword_UNKNOWN at callsites to nsCSSProps::FindKeyword(). r=xidorn
nsCSSProps::FindKeyword() has always failed when passed eCSSKeyword_UNKNOWN, but it didn't used to have a fast-path for this sentinel value -- it used to walk the whole array before failing. So it used to make sense to have a dedicated check for it at the callsites, to avoid an unnecessary array traversal. But now, there's an early-return in FindKeyword() (or actually in its helper, FindIndexOfKeyword()) which catches eCSSKeyword_UNKNOWN right away, before it walks the array. So there's no benefit to having a dedicated check at the callsites anymore. MozReview-Commit-ID: FOX48YZMomd --HG-- extra : rebase_source : 2309d5f3f15e3cad2e4ae5ebe14af1c6beb43ebc
This commit is contained in:
parent
b40b591cec
commit
b6f1645a45
@ -13398,8 +13398,7 @@ nsGlobalWindow::SetCursorOuter(const nsAString& aCursor, ErrorResult& aError)
|
||||
cursor = NS_STYLE_CURSOR_AUTO;
|
||||
else {
|
||||
nsCSSKeyword keyword = nsCSSKeywords::LookupKeyword(aCursor);
|
||||
if (eCSSKeyword_UNKNOWN == keyword ||
|
||||
!nsCSSProps::FindKeyword(keyword, nsCSSProps::kCursorKTable, cursor)) {
|
||||
if (!nsCSSProps::FindKeyword(keyword, nsCSSProps::kCursorKTable, cursor)) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
@ -4226,8 +4226,7 @@ CSSParserImpl::ParseFontFeatureValueSet(nsCSSFontFeatureValuesRule
|
||||
// which font-specific variant of font-variant-alternates
|
||||
int32_t whichVariant;
|
||||
nsCSSKeyword keyword = nsCSSKeywords::LookupKeyword(mToken.mIdent);
|
||||
if (keyword == eCSSKeyword_UNKNOWN ||
|
||||
!nsCSSProps::FindKeyword(keyword,
|
||||
if (!nsCSSProps::FindKeyword(keyword,
|
||||
nsCSSProps::kFontVariantAlternatesFuncsKTable,
|
||||
whichVariant))
|
||||
{
|
||||
@ -6733,12 +6732,10 @@ CSSParserImpl::ParseColor(nsCSSValue& aValue)
|
||||
}
|
||||
else {
|
||||
nsCSSKeyword keyword = nsCSSKeywords::LookupKeyword(tk->mIdent);
|
||||
if (eCSSKeyword_UNKNOWN < keyword) { // known keyword
|
||||
int32_t value;
|
||||
if (nsCSSProps::FindKeyword(keyword, nsCSSProps::kColorKTable, value)) {
|
||||
aValue.SetIntValue(value, eCSSUnit_EnumColor);
|
||||
return CSSParseResult::Ok;
|
||||
}
|
||||
int32_t value;
|
||||
if (nsCSSProps::FindKeyword(keyword, nsCSSProps::kColorKTable, value)) {
|
||||
aValue.SetIntValue(value, eCSSUnit_EnumColor);
|
||||
return CSSParseResult::Ok;
|
||||
}
|
||||
}
|
||||
break;
|
||||
@ -7556,12 +7553,10 @@ CSSParserImpl::ParseEnum(nsCSSValue& aValue,
|
||||
return false;
|
||||
}
|
||||
nsCSSKeyword keyword = nsCSSKeywords::LookupKeyword(*ident);
|
||||
if (eCSSKeyword_UNKNOWN < keyword) {
|
||||
int32_t value;
|
||||
if (nsCSSProps::FindKeyword(keyword, aKeywordTable, value)) {
|
||||
aValue.SetIntValue(value, eCSSUnit_Enumerated);
|
||||
return true;
|
||||
}
|
||||
int32_t value;
|
||||
if (nsCSSProps::FindKeyword(keyword, aKeywordTable, value)) {
|
||||
aValue.SetIntValue(value, eCSSUnit_Enumerated);
|
||||
return true;
|
||||
}
|
||||
|
||||
// Put the unknown identifier back and return
|
||||
@ -7591,16 +7586,14 @@ CSSParserImpl::ParseAlignEnum(nsCSSValue& aValue,
|
||||
}
|
||||
keyword = nsCSSKeywords::LookupKeyword(*ident);
|
||||
}
|
||||
if (eCSSKeyword_UNKNOWN < keyword) {
|
||||
int32_t value;
|
||||
if (nsCSSProps::FindKeyword(keyword, aKeywordTable, value)) {
|
||||
if (baselinePrefix == eCSSKeyword_last &&
|
||||
keyword == eCSSKeyword_baseline) {
|
||||
value = NS_STYLE_ALIGN_LAST_BASELINE;
|
||||
}
|
||||
aValue.SetIntValue(value, eCSSUnit_Enumerated);
|
||||
return true;
|
||||
int32_t value;
|
||||
if (nsCSSProps::FindKeyword(keyword, aKeywordTable, value)) {
|
||||
if (baselinePrefix == eCSSKeyword_last &&
|
||||
keyword == eCSSKeyword_baseline) {
|
||||
value = NS_STYLE_ALIGN_LAST_BASELINE;
|
||||
}
|
||||
aValue.SetIntValue(value, eCSSUnit_Enumerated);
|
||||
return true;
|
||||
}
|
||||
|
||||
// Put the unknown identifier back and return
|
||||
@ -10659,8 +10652,7 @@ CSSParserImpl::IsLegacyGradientLine(const nsCSSTokenType& aType,
|
||||
// This is only a gradient line if it's a box position keyword.
|
||||
nsCSSKeyword kw = nsCSSKeywords::LookupKeyword(aId);
|
||||
int32_t junk;
|
||||
if (kw != eCSSKeyword_UNKNOWN &&
|
||||
nsCSSProps::FindKeyword(kw, nsCSSProps::kImageLayerPositionKTable,
|
||||
if (nsCSSProps::FindKeyword(kw, nsCSSProps::kImageLayerPositionKTable,
|
||||
junk)) {
|
||||
haveGradientLine = true;
|
||||
}
|
||||
@ -14469,12 +14461,11 @@ CSSParserImpl::ParseSingleAlternate(int32_t& aWhichFeature,
|
||||
// function ==> e.g. swash(flowing) styleset(alt-g, alt-m)
|
||||
|
||||
nsCSSKeyword keyword = nsCSSKeywords::LookupKeyword(mToken.mIdent);
|
||||
if (!(eCSSKeyword_UNKNOWN < keyword &&
|
||||
nsCSSProps::FindKeyword(keyword,
|
||||
(isIdent ?
|
||||
nsCSSProps::kFontVariantAlternatesKTable :
|
||||
nsCSSProps::kFontVariantAlternatesFuncsKTable),
|
||||
aWhichFeature)))
|
||||
if (!nsCSSProps::FindKeyword(keyword,
|
||||
(isIdent ?
|
||||
nsCSSProps::kFontVariantAlternatesKTable :
|
||||
nsCSSProps::kFontVariantAlternatesFuncsKTable),
|
||||
aWhichFeature))
|
||||
{
|
||||
// failed, pop token
|
||||
UngetToken();
|
||||
|
@ -516,8 +516,7 @@ nsStyleUtil::ComputeFunctionalAlternates(const nsCSSValueList* aList,
|
||||
NS_ASSERTION(key != eCSSKeyword_UNKNOWN, "unknown alternate property value");
|
||||
|
||||
int32_t alternate;
|
||||
if (key == eCSSKeyword_UNKNOWN ||
|
||||
!nsCSSProps::FindKeyword(key,
|
||||
if (!nsCSSProps::FindKeyword(key,
|
||||
nsCSSProps::kFontVariantAlternatesFuncsKTable,
|
||||
alternate)) {
|
||||
NS_NOTREACHED("keyword not a font-variant-alternates value");
|
||||
|
Loading…
x
Reference in New Issue
Block a user