Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(92)

Side by Side Diff: third_party/WebKit/Source/core/css/RuleSet.cpp

Issue 2306903002: Fix the wrong usages of CSSSelectorList::selectorUsesXXX() functions (Closed)
Patch Set: Fix Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org)
3 * (C) 2004-2005 Allan Sandfeld Jensen (kde@carewolf.com) 3 * (C) 2004-2005 Allan Sandfeld Jensen (kde@carewolf.com)
4 * Copyright (C) 2006, 2007 Nicholas Shanks (webkit@nickshanks.com) 4 * Copyright (C) 2006, 2007 Nicholas Shanks (webkit@nickshanks.com)
5 * Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 Apple Inc. All r ights reserved. 5 * Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 Apple Inc. All r ights reserved.
6 * Copyright (C) 2007 Alexey Proskuryakov <ap@webkit.org> 6 * Copyright (C) 2007 Alexey Proskuryakov <ap@webkit.org>
7 * Copyright (C) 2007, 2008 Eric Seidel <eric@webkit.org> 7 * Copyright (C) 2007, 2008 Eric Seidel <eric@webkit.org>
8 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t orchmobile.com/) 8 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t orchmobile.com/)
9 * Copyright (c) 2011, Code Aurora Forum. All rights reserved. 9 * Copyright (c) 2011, Code Aurora Forum. All rights reserved.
10 * Copyright (C) Research In Motion Limited 2011. All rights reserved. 10 * Copyright (C) Research In Motion Limited 2011. All rights reserved.
(...skipping 239 matching lines...) Expand 10 before | Expand all | Expand 10 after
250 250
251 void RuleSet::addChildRules(const HeapVector<Member<StyleRuleBase>>& rules, cons t MediaQueryEvaluator& medium, AddRuleFlags addRuleFlags) 251 void RuleSet::addChildRules(const HeapVector<Member<StyleRuleBase>>& rules, cons t MediaQueryEvaluator& medium, AddRuleFlags addRuleFlags)
252 { 252 {
253 for (unsigned i = 0; i < rules.size(); ++i) { 253 for (unsigned i = 0; i < rules.size(); ++i) {
254 StyleRuleBase* rule = rules[i].get(); 254 StyleRuleBase* rule = rules[i].get();
255 255
256 if (rule->isStyleRule()) { 256 if (rule->isStyleRule()) {
257 StyleRule* styleRule = toStyleRule(rule); 257 StyleRule* styleRule = toStyleRule(rule);
258 258
259 const CSSSelectorList& selectorList = styleRule->selectorList(); 259 const CSSSelectorList& selectorList = styleRule->selectorList();
260 for (size_t selectorIndex = 0; selectorIndex != kNotFound; selectorI ndex = selectorList.indexOfNextSelectorAfter(selectorIndex)) { 260 for (size_t selectorIndex = 0; selectorIndex != kNotFound; selectorI ndex = selectorList.indexOfNextSelectorAfter(selectorIndex)) {
rune 2016/09/02 09:14:31 SelectorList::next() would be a better choice, I t
hayato 2016/09/05 02:36:11 Yeah, but we still need a selectorIndex here becau
rune 2016/09/05 07:46:39 Ah. I didn't notice. Just leave it like this then.
261 if (selectorList.selectorUsesDeepCombinatorOrShadowPseudo(select orIndex)) { 261 if (selectorList.selectorAt(selectorIndex).hasDeepCombinatorOrSh adowPseudo()) {
262 m_deepCombinatorOrShadowPseudoRules.append(MinimalRuleData(s tyleRule, selectorIndex, addRuleFlags)); 262 m_deepCombinatorOrShadowPseudoRules.append(MinimalRuleData(s tyleRule, selectorIndex, addRuleFlags));
263 } else if (selectorList.selectorHasContentPseudo(selectorIndex)) { 263 } else if (selectorList.selectorAt(selectorIndex).hasContentPseu do()) {
264 m_contentPseudoElementRules.append(MinimalRuleData(styleRule , selectorIndex, addRuleFlags)); 264 m_contentPseudoElementRules.append(MinimalRuleData(styleRule , selectorIndex, addRuleFlags));
265 } else if (selectorList.selectorHasSlottedPseudo(selectorIndex)) { 265 } else if (selectorList.selectorAt(selectorIndex).hasSlottedPseu do()) {
266 m_slottedPseudoElementRules.append(MinimalRuleData(styleRule , selectorIndex, addRuleFlags)); 266 m_slottedPseudoElementRules.append(MinimalRuleData(styleRule , selectorIndex, addRuleFlags));
267 } else { 267 } else {
268 addRule(styleRule, selectorIndex, addRuleFlags); 268 addRule(styleRule, selectorIndex, addRuleFlags);
269 } 269 }
270 } 270 }
271 } else if (rule->isPageRule()) { 271 } else if (rule->isPageRule()) {
272 addPageRule(toStyleRulePage(rule)); 272 addPageRule(toStyleRulePage(rule));
273 } else if (rule->isMediaRule()) { 273 } else if (rule->isMediaRule()) {
274 StyleRuleMedia* mediaRule = toStyleRuleMedia(rule); 274 StyleRuleMedia* mediaRule = toStyleRuleMedia(rule);
275 if ((!mediaRule->mediaQueries() || medium.eval(mediaRule->mediaQueri es(), &m_viewportDependentMediaQueryResults, &m_deviceDependentMediaQueryResults ))) 275 if ((!mediaRule->mediaQueries() || medium.eval(mediaRule->mediaQueri es(), &m_viewportDependentMediaQueryResults, &m_deviceDependentMediaQueryResults )))
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after
394 394
395 #ifndef NDEBUG 395 #ifndef NDEBUG
396 void RuleSet::show() const 396 void RuleSet::show() const
397 { 397 {
398 for (const auto& rule: m_allRules) 398 for (const auto& rule: m_allRules)
399 rule.selector().show(); 399 rule.selector().show();
400 } 400 }
401 #endif 401 #endif
402 402
403 } // namespace blink 403 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698