Closed
Bug 1379425
Opened 7 years ago
Closed 7 years ago
stylo: Compositor animations may make us miss restyles/use outdated styles.
Categories
(Core :: CSS Parsing and Computation, defect, P1)
Core
CSS Parsing and Computation
Tracking
()
VERIFIED
DUPLICATE
of bug 1371450
People
(Reporter: emilio, Unassigned)
References
(Blocks 1 open bug)
Details
Attachments
(2 files)
I think this is the root cause of bug 1379203, at least, and may be related to bug 1371450 too.
I'll attach a test-case that shows the a few links rotating normal restyles (one element should be green at a time).
When there's a transform animation in effect (you can click the button to trigger one), if you select some text under the <div id="container">, for example, you eventually end up with multiple green links.
In a debug build, this also happens to trigger the "lazy computation forbidden" assertion.
This is, I think, due to multiple things:
* The slippery handling of element snapshots described in bug 1378064 comment 15.
* The fact that the post-traversal for animations follows _both_ the animation dirty descendants bit and the normal dirty descendants bit, regardless of the kind of restyles we're doing. This makes us update the styles before the normal traversal I think, and makes us throw away all the restyle state of elements _not_ affected by animations.
This is definitely wrong, but I need more info about how all this is supposed to work with the snapshot stuff, etc, in order to figure out what the correct fix is.
Reporter | ||
Comment 1•7 years ago
|
||
Reporter | ||
Comment 2•7 years ago
|
||
In this test-case, you just have to click on the other non-active links, though it reproduces less frequently than changing the DOM content of the container and selecting it.
Comment 3•7 years ago
|
||
I'd never thought that my loading circle could be the cause. That's why all my attempts to make a reduced test case didn't work. Thanks so much!
Reporter | ||
Comment 4•7 years ago
|
||
(In reply to Darkspirit from comment #3)
> I'd never thought that my loading circle could be the cause. That's why all
> my attempts to make a reduced test case didn't work. Thanks so much!
Thank _you_ for pointing me to the problematic page! That was way easier to reduce than Inbox, I'd probably have given up on reducing Inbox actually :-)
Comment 5•7 years ago
|
||
Blocking stylo-site-issues as this will affect our website.
Updated•7 years ago
|
Priority: -- → P1
Comment 6•7 years ago
|
||
(Darkspirit from bug 1380543 comment 7)
> Now I tried it with a try build from bug 1371450 comment 13:
> https://treeherder.mozilla.org/#/jobs?repo=try&revision=2deb83ce288532ce5f2b1534ffe6623b6ad9a9b2
> > Linux x64 Stylo opt > tc[tier2] > B > target.tar.bz2 (stylo is enabled by default)
With the above build I can't reproduce the bug with the testcases and my dev website anymore. Can you confirm this?
But with today's Nightly 56 x64 20170713100259 @ Debian Testing (Linux 4.11.0-1-amd64, Radeon RX480) it's still possible to reproduce. I don't know which changes happened between those two builds, but one or more fixed it.
Comment 7•7 years ago
|
||
(In reply to Darkspirit from comment #6)
> (Darkspirit from bug 1380543 comment 7)
> > Now I tried it with a try build from bug 1371450 comment 13:
> > https://treeherder.mozilla.org/#/jobs?repo=try&revision=2deb83ce288532ce5f2b1534ffe6623b6ad9a9b2
> > > Linux x64 Stylo opt > tc[tier2] > B > target.tar.bz2 (stylo is enabled by default)
>
> With the above build I can't reproduce the bug with the testcases and my dev
> website anymore. Can you confirm this?
>
> But with today's Nightly 56 x64 20170713100259 @ Debian Testing (Linux
> 4.11.0-1-amd64, Radeon RX480) it's still possible to reproduce. I don't know
> which changes happened between those two builds, but one or more fixed it.
Thanks for the confirmation! You are right, I believe the try fixes this bug, actually I've been trying to fix this bug in that bug. :)
Comment 8•7 years ago
|
||
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → DUPLICATE
Comment 9•7 years ago
|
||
Fixed in Nightly 56 x64 20170716100258 @ Debian Testing (Linux 4.11.0-1-amd64, Radeon RX480).
Status: RESOLVED → VERIFIED
You need to log in
before you can comment on or make changes to this bug.
Description
•