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

Issue 1303513002: Revert of Prepare for multiple !important author ranges. (Closed)

Created:
5 years, 4 months ago by hans
Modified:
5 years, 4 months ago
Reviewers:
Timothy Loh, kochi, rune
CC:
blink-reviews, blink-reviews-style_chromium.org, blink-reviews-css, dglazkov+blink, apavlov+blink_chromium.org, darktears, rwlbuis
Base URL:
https://chromium.googlesource.com/chromium/blink.git@master
Target Ref:
refs/heads/master
Project:
blink
Visibility:
Public.

Description

Revert of Prepare for multiple !important author ranges. (patchset #11 id:200001 of https://codereview.chromium.org/1282243002/ ) Reason for revert: This caused oilpan plugin errors on Windows. From http://build.chromium.org/p/chromium.fyi/builders/ClangToTWin/builds/2535/steps/compile/logs/stdio: ..\..\third_party\WebKit\Source\core/css/resolver/MatchResult.h(115,1) : error: [blink-gc] Class 'ImportantAuthorRangeIterator' contains invalid fields. class ImportantAuthorRangeIterator { ^ ..\..\third_party\WebKit\Source\core/css/resolver/MatchResult.h(140,5) : note: [blink-gc] Stack-allocated field 'm_result' declared here: const MatchResult& m_result; ^ ..\..\third_party\WebKit\Source\core/css/resolver/MatchResult.h(144,1) : error: [blink-gc] Class 'ImportantAuthorRanges' contains invalid fields. class ImportantAuthorRanges { ^ ..\..\third_party\WebKit\Source\core/css/resolver/MatchResult.h(152,5) : note: [blink-gc] Stack-allocated field 'm_result' declared here: const MatchResult& m_result; ^ Original issue's description: > Prepare for multiple !important author ranges. > > This CL is split out from [1] where we support multiple author origins in > terms of shadow dom scopes. The vector of MatchedProperties contains > matched declarations from all origins in the order in which they should > be applied. For !important declarations, they are applied in the same > order within the same origin, but the order of the origins are different > as the cascading order is: > > - UA important > - Author important > - Author > - UA > > We used to have two ranges, one for UA and one for author to accomplish > this. However, with the normal/!important cascading order for > declarations from different shadow doms, we need multiple author ranges: > > - UA important > - Author important scope n > ... > - Author important scope 1 > - Author scope 1 > ... > - Author scope n > - UA > > We introduce an ImportantAuthorRangeIterator to iterate through the > author ranges and add iterator-style iteration for each range through the > MatchedPropertiesRange class. > > As the applyMatchedProperties code is hot, I've run the blink_perf.css > tests locally. Some improved by 2-4%, some became worse by similar > percentages. > > [1] https://codereview.chromium.org/1224673002/ > > BUG=487125 > TEST=fast/css > > Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=200697 TBR=kochi@chromium.org,timloh@chromium.org,rune@opera.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=487125 Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=200728

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+52 lines, -317 lines) Patch
M Source/core/core.gypi View 1 chunk +0 lines, -1 line 0 comments Download
M Source/core/css/ElementRuleCollector.h View 1 chunk +0 lines, -2 lines 0 comments Download
M Source/core/css/ElementRuleCollector.cpp View 2 chunks +4 lines, -1 line 0 comments Download
M Source/core/css/resolver/MatchResult.h View 2 chunks +11 lines, -87 lines 0 comments Download
M Source/core/css/resolver/MatchResult.cpp View 1 chunk +2 lines, -17 lines 0 comments Download
D Source/core/css/resolver/MatchResultTest.cpp View 1 chunk +0 lines, -173 lines 0 comments Download
M Source/core/css/resolver/MatchedPropertiesCache.h View 2 chunks +3 lines, -3 lines 0 comments Download
M Source/core/css/resolver/MatchedPropertiesCache.cpp View 4 chunks +7 lines, -7 lines 0 comments Download
M Source/core/css/resolver/StyleResolver.h View 1 chunk +1 line, -1 line 0 comments Download
M Source/core/css/resolver/StyleResolver.cpp View 9 chunks +24 lines, -25 lines 0 comments Download

Messages

Total messages: 9 (0 generated)
hans
Created Revert of Prepare for multiple !important author ranges.
5 years, 4 months ago (2015-08-18 14:58:31 UTC) #1
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1303513002/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1303513002/1
5 years, 4 months ago (2015-08-18 14:58:40 UTC) #2
commit-bot: I haz the power
Committed patchset #1 (id:1) as https://src.chromium.org/viewvc/blink?view=rev&revision=200728
5 years, 4 months ago (2015-08-18 14:59:05 UTC) #3
Timothy Loh
On 2015/08/18 14:59:05, commit-bot: I haz the power wrote: > Committed patchset #1 (id:1) as ...
5 years, 4 months ago (2015-08-19 01:41:46 UTC) #4
kochi
On 2015/08/19 01:41:46, Timothy Loh wrote: > On 2015/08/18 14:59:05, commit-bot: I haz the power ...
5 years, 4 months ago (2015-08-19 01:51:02 UTC) #5
rune
On 2015/08/19 01:51:02, Takayoshi Kochi wrote: > On 2015/08/19 01:41:46, Timothy Loh wrote: > > ...
5 years, 4 months ago (2015-08-19 07:15:56 UTC) #6
rune
On 2015/08/19 07:15:56, rune wrote: > On 2015/08/19 01:51:02, Takayoshi Kochi wrote: > > On ...
5 years, 4 months ago (2015-08-19 07:36:01 UTC) #7
kochi
On 2015/08/19 07:36:01, rune wrote: > On 2015/08/19 07:15:56, rune wrote: > > On 2015/08/19 ...
5 years, 4 months ago (2015-08-19 08:05:11 UTC) #8
rune
5 years, 4 months ago (2015-08-19 09:10:36 UTC) #9
Message was sent while issue was closed.
On 2015/08/19 08:05:11, Takayoshi Kochi wrote:
> On 2015/08/19 07:36:01, rune wrote:
> > On 2015/08/19 07:15:56, rune wrote:
> > > On 2015/08/19 01:51:02, Takayoshi Kochi wrote:
> > > > On 2015/08/19 01:41:46, Timothy Loh wrote:
> > > > > On 2015/08/18 14:59:05, commit-bot: I haz the power wrote:
> > > > > > Committed patchset #1 (id:1) as
> > > > > > https://src.chromium.org/viewvc/blink?view=rev&revision=200728
> > > > > 
> > > > > Don't we normally not revert for Oilpan breakages?
> > > > 
> > > > Yeah, I thought the same.
> > > > What's the expected fix for Oilpan?
> > > 
> > > I think I need to mark ImportantAuthorRanges and
> ImportantAuthorRangeIterator
> > as
> > > STACK_ALLOCATED().
> > 
> > Trying here:
> > 
> > https://codereview.chromium.org/1283133006/#ps20001
> 
> If the fix is as trivial as to add STACK_ALLOCATED() in the class definition,
> maybe we can reuse the original CL (1282243002) for resubmitting?

Yes, that made the trick for oilpan bot. Trying to re-land the original CL now.

Powered by Google App Engine
This is Rietveld 408576698