Closed Bug 1772972 Opened 2 years ago Closed 1 year ago

SVG filter rendering issues

Categories

(Core :: Graphics: WebRender, defect, P3)

Firefox 101
defect

Tracking

()

RESOLVED DUPLICATE of bug 1836703

People

(Reporter: sasha, Assigned: gw)

References

(Blocks 1 open bug, Regression)

Details

(Keywords: regression)

Attachments

(4 files)

User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:101.0) Gecko/20100101 Firefox/101.0

Steps to reproduce:

On my website https://sashanoraa.gay/ if you scroll down past the header with the sun and nav bar then back up. Bug also occurs on Firefox for Android (note my site won't show the SVG that causes the bug unless the browser is in desktop mode).

Actual results:

The sun SVG and text under it start to render incorrectly.

The element that I believe to be causing the bug is an img tag with an svg source. The img tag has a fliter drop-shadow applied via css. Removing the filter property in css make the bug stop happening. This bug is not present in Firefox ESR. It only started happening somewhat recently but I'm not exactly sure at which version the bug began. Probably in the last 2 months.

Expected results:

The SVG and it's drop shadow render correctly.

After further testing I've determined the bug first appears in Firefox 99.

The Bugbug bot thinks this bug should belong to the 'Core::SVG' component, and is moving the bug to that component. Please correct in case you think the bot is wrong.

Component: Untriaged → SVG
Product: Firefox → Core
Attached image screenshot

I can reproduce the issue in Nightly103.0a1 Windows10.

#1 Regression window: An orange rectangle unexpectedly appears. The glitch goes away when the header bar is off-screen.
https://hg.mozilla.org/integration/autoland/pushloghtml?fromchange=c6f1243c3ba45a4ad3cfd1cacdbf12ad377b4a81&tochange=fc2b3d6448bcc3575fffb1abc923e7e703aeef54

#2 Regression window: This bug appears. And the glitch persists even after scrolling.
https://hg.mozilla.org/integration/autoland/pushloghtml?fromchange=e981d54aa148bd2d73f0f8f8ac4e90b13420a77f&tochange=3c3520362bda55a31840d9a4ed3a6cc9bb097cfd

Status: UNCONFIRMED → NEW
Has Regression Range: --- → yes
Has STR: --- → yes
Ever confirmed: true
Keywords: regression
Regressed by: 1757876, 1749380
Component: SVG → Graphics: WebRender

Ni? Glenn (per regression window).

Severity: -- → S3
Flags: needinfo?(gwatson)
Priority: -- → P3
Assignee: nobody → gwatson
Flags: needinfo?(gwatson)

I couldn't reproduce this locally on current nightly - would you be able to check if it's fixed for you? If not, perhaps there are some specific set of steps or a specific OS / environment that it repros under? Could you include the content of your about:support ?

Flags: needinfo?(sasha)
Attached file about:support info
(In reply to Glenn Watson [:gw] from comment #5) > I couldn't reproduce this locally on current nightly - would you be able to check if it's fixed for you? If not, perhaps there are some specific set of steps or a specific OS / environment that it repros under? Could you include the content of your `about:support` ? I am still seeing the issue but only on one of my devices now instead of all of them. The on the bug is happening on is a Dell XPS 13 with Intel graphics running Fedora 36 Silverblue and Wayland. I've included the about:support data below. Let me know if I can provide anything else to help. ```

(In reply to Glenn Watson [:gw] from comment #5)

I couldn't reproduce this locally on current nightly - would you be able to check if it's fixed for you? If not, perhaps there are some specific set of steps or a specific OS / environment that it repros under? Could you include the content of your about:support ?

I am still seeing the issue but only on one of my devices now instead of all of them. The on the bug is happening on is a Dell XPS 13 with Intel graphics running Fedora 36 Silverblue and Wayland. I've attached the about:support data as requested. Let me know if I can provide anything else to help.

Flags: needinfo?(sasha)

I wonder if this is related to wayland, perhaps. Are you able to run an X11 session on that device and see if it still occurs? Another interesting test would be to run with a display scale of 1 (it seems to be 2 from about:support) and see if that makes any difference?

Flags: needinfo?(sasha)

(In reply to Glenn Watson [:gw] from comment #8)

I wonder if this is related to wayland, perhaps. Are you able to run an X11 session on that device and see if it still occurs? Another interesting test would be to run with a display scale of 1 (it seems to be 2 from about:support) and see if that makes any difference?

Switching to X11 makes no difference. Setting my scale to 1 does make the issue go away but zooming the page to between 180% and 200% at scale 1 makes it come back. And zooming the page at all (larger or smaller) at scale 2 make the issue go away. That implies to me that the size of the page on the screen, regardless of display scaling, is an important factor in triggering the bug.

Flags: needinfo?(sasha)

Does setting gfx.webrender.debug.force-picture-invalidation to be true in about:config stop the issue occurring? (no browser restart is required for that preference).

Flags: needinfo?(sasha)

Seems to be that the parameters of the drop-shadow filter along with the picture cache slice layout can cause invalidation failures.

(In reply to Glenn Watson [:gw] from comment #10)

Does setting gfx.webrender.debug.force-picture-invalidation to be true in about:config stop the issue occurring? (no browser restart is required for that preference).

It does not, but it does alter the bugs, behavior. Once I scroll up a bit past the bottom on the sun the glitch stops. Whereas with that setting off I can scroll all the way to the top of the page and how the glitch still visible.

Flags: needinfo?(sasha)
Blocks: 1782834

I was able to reproduce the bug on another computer by making the Firefox window the right size. The bug triggers with a full screen Firefox window on my monitor that's 1280x1024.

I can repro this on Windows11.
STR:

  1. Set DPI=1
  2. Open this bug in a new tab
  3. Right click on the website URL to open in a new tab : https://sashanoraa.gay/
  4. In the new tab, open the hamburger menu, click on the " - " button on the zoom buton to 67%
  5. You will see the artifact.

Edit: setting gfx.webrender.debug.force-picture-invalidation = true stops this bug from occurring.

(In reply to Mayank Bansal from comment #14)

I can repro this on Windows11.
STR:

  1. Set DPI=1
  2. Open this bug in a new tab
  3. Right click on the website URL to open in a new tab : https://sashanoraa.gay/
  4. In the new tab, open the hamburger menu, click on the " - " button on the zoom buton to 67%
  5. You will see the artifact.

Edit: setting gfx.webrender.debug.force-picture-invalidation = true stops this bug from occurring.

I can no longer repro this bug with these STR after Bug 1836703.

@Sashanora: With the latest Nightly, can you check if this bug is fixed for you ?

Flags: needinfo?(sasha)

Alice, is this bug fixed for you now?

Flags: needinfo?(alice0775)

I can reproduce this on Firefox116.0.2 Windows10.
I cannot reproduce this on Firefox117.0b5 and Nightly118.0a1(20230810094725) Windows10.

Flags: needinfo?(alice0775)
Status: NEW → RESOLVED
Closed: 1 year ago
Depends on: 1836703
Flags: needinfo?(sasha)
Resolution: --- → FIXED
No longer depends on: 1836703
Duplicate of bug: 1836703
Resolution: FIXED → DUPLICATE

Sorry for the delay. Just tested Firefox Nightly 118.0.r20230831180026 and the bug seems to be fixed in that version.

You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: