Not render a page properly of Wikipedia
Categories
(Core :: Web Painting, defect)
Tracking
()
Tracking | Status | |
---|---|---|
firefox-esr78 | --- | unaffected |
firefox-esr91 | --- | unaffected |
firefox92 | --- | unaffected |
firefox93 | + | wontfix |
firefox94 | + | verified |
People
(Reporter: nolamiller1203+bugzilla, Assigned: mattwoodrow)
References
(Regression)
Details
(Keywords: correctness, regression)
Attachments
(4 files)
User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:93.0) Gecko/20100101 Firefox/93.0
Steps to reproduce:
- Go to https://ja.wikipedia.org/wiki/GEM_(%E3%82%A2%E3%82%A4%E3%83%89%E3%83%AB%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97)
- Scroll down to '在籍タイムライン' section of the middle of the page.
- Scroll to right.
- Boom, black out the area.
<Environment>
Firefox 93.0b2
Windows 10 19043
Geforce GTX 670
Actual results:
black out the area of timeline.
Expected results:
render properly.
Reporter | ||
Comment 1•3 years ago
|
||
Comment 2•3 years ago
|
||
The Bugbug bot thinks this bug should belong to the 'Core::Graphics: WebRender' component, and is moving the bug to that component. Please revert this change in case you think the bot is wrong.
Comment 3•3 years ago
|
||
Thanks for the report!
Comment 4•3 years ago
|
||
I can reproduce this even on Linux (Debian Testing, Intel Iris Graphics 6100 (BDW GT3), EGL/Xwayland, Macbook Pro).
Comment 5•3 years ago
|
||
Tested on Linux:
mozregression --good 90 --bad 2021-09-08 --pref gfx.webrender.all:true -a 'https://ja.wikipedia.org/wiki/GEM_(%E3%82%A2%E3%82%A4%E3%83%89%E3%83%AB%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97)'
13:42.97 INFO: Last good revision: 9118d660cfcb990a0b9723aefbb237ed489318b0
13:42.97 INFO: First bad revision: 93f8701fc36dd009c38448b90896eb819ae4b69c
13:42.97 INFO: Pushlog:
https://hg.mozilla.org/integration/autoland/pushloghtml?fromchange=9118d660cfcb990a0b9723aefbb237ed489318b0&tochange=93f8701fc36dd009c38448b90896eb819ae4b69c
93f8701fc36dd009c38448b90896eb819ae4b69c Matt Woodrow — Bug 1728709 - Add nsDisplayItem::GetPaintRect that computes a value using the current clip extents. r=jrmuizel
Updated•3 years ago
|
Assignee | ||
Comment 6•3 years ago
|
||
It looks like GenerateFallbackData (which we're using to paint nsDisplayImage fallback, since it's an image map) overrides the building rect of items to be the bounds, and trusts that the recorded rendering commands don't have any reference to the building rect.
It does however create the recording draw target using the building rect size, though this usually isn't used for anything.
The regressing change here restricted drawing (within nsDisplayImage::Paint) to the results of GetClipRect(aBuilder, aCtx), which includes the DT bounds.
When we scroll the fallback blob, we detect that no invalidation is needed, and just update the bounds/building rect on the WebRenderFallbackData object.
That no longer works, since trying to replay the commands recorded with the old building rect against a bitmap DT with the new one results in emtpy areas.
Jeff, I think we could make the dtBounds
contain the full bounds of the item and fix this, does that make sense?
For some reason I can't reproduce this in a local build, but I can in Nightly.
Updated•3 years ago
|
Assignee | ||
Comment 7•3 years ago
|
||
That is already the case, I misread the code.
The bug is in ::GetPaintRect.
Assignee | ||
Comment 8•3 years ago
|
||
For non-WR painting from nsDisplayList::Paint, the display item clip will already be applied to the context, so will still be included in the result via the clip extents.
WebRender fallback painting intentionally doesn't use the clip (since the clip can include the displayport size), to avoid needing to invalidate for display port changes..
Updated•3 years ago
|
Updated•3 years ago
|
Comment 10•3 years ago
|
||
There is an accepted patch that may be a good candidate for uplifting, can we land it and uplift to beta if it makes sense? Thanks
Comment 11•3 years ago
|
||
Jeff, can you land this patch and request uplift to beta if it makes sense? Thanks
Comment 12•3 years ago
|
||
Comment 13•3 years ago
|
||
bugherder |
Comment 14•3 years ago
|
||
There was no uplift request and we build our last beta today. I am marking this as wontfix for 93. If this is an important fix needed for this release (that bug has no priority and severity set), please reach out to me thanks.
Comment hidden (obsolete) |
Updated•3 years ago
|
Comment 16•3 years ago
|
||
(Pascal Chevrel:pascalc from comment #14)
There was no uplift request and we build our last beta today. I am marking this as wontfix for 93. If this is an important fix needed for this release (that bug has no priority and severity set), please reach out to me thanks.
Can this also be uplifted into 93 rc? Or is keeping the bug safer than the patch?
Assignee | ||
Comment 17•3 years ago
|
||
(In reply to Darkspirit from comment #16)
(Pascal Chevrel:pascalc from comment #14)
There was no uplift request and we build our last beta today. I am marking this as wontfix for 93. If this is an important fix needed for this release (that bug has no priority and severity set), please reach out to me thanks.
Can this also be uplifted into 93 rc? Or is keeping the bug safer than the patch?
We generally avoid uplifting into RC, except for super critical fixes.
Updated•3 years ago
|
Comment 20•3 years ago
|
||
Reproduced this issue on Win 10, Beta 93.0b2 with the steps from comment 0.
The issue is verified as fixed on Win 10 x64, Beta 94.0b4.
Updated•3 years ago
|
Description
•