New issue
Advanced search Search tips

Issue 801225 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner: ----
Closed: Mar 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug

Blocked on:
issue 660265



Sign in to add a comment

LayoutTests/fast/css/invalidation/slotted.html fails without the explicit updateStyleAndReturnAffectedElementCount call

Project Member Reported by emilio@chromium.org, Jan 11 2018

Issue description

What steps will reproduce the problem?

(1) Remove the updateStyleAndReturnAffectedElementCount calls from that test.
(2) The test fails with: assert_equals: expected "rgb(0, 128, 0)" but got "rgb(255, 0, 0)"

I discovered this when porting this test to WPT in https://bugzilla.mozilla.org/show_bug.cgi?id=1429846.

Fails on Chromium 63, but I'm moderately sure it also fails on trunk.

The reason it fails, I think, it's because of this line:

  https://cs.chromium.org/chromium/src/third_party/WebKit/Source/core/dom/Document.cpp?l=2341&rcl=e8adc62ad8f38a703411777d851d0f4fd3924d2e

Slots in Blink aren't part of the flat tree, and thus that loop skips them. However the slot does need style recalc, and thus Blink incorrectly returns the outdated style.
 

Comment 1 by emilio@chromium.org, Jan 11 2018

Blockedon: 660265

Comment 2 by emilio@chromium.org, Jan 11 2018

(I marked blocked on  issue 660265 , but I'm pretty sure it can be fixed without it, so feel free to remove if so :))
Not having <slot> participate in the flat tree, its computed style is more or less undefined. I've started to look at  issue 660265  and I don't think there's a point of fixing this any other way.

Comment 4 by meade@chromium.org, Jan 16 2018

Labels: Test-Layout
Status: Fixed (was: Available)

Sign in to add a comment