Closed Bug 1497528 Opened 2 years ago Closed 2 years ago

Large SVG in google docs clipped incorrectly with WebRender

Categories

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

Unspecified
All
defect

Tracking

()

RESOLVED FIXED
Tracking Status
geckoview62 --- disabled
firefox-esr60 --- unaffected
firefox62 --- disabled
firefox63 --- disabled
firefox64 --- fixed

People

(Reporter: nical, Assigned: gw)

References

(Blocks 2 open bugs, )

Details

(Keywords: regression)

Attachments

(4 files, 1 obsolete file)

With WebRender, zooming on the svg at https://docs.google.com/drawings/d/1zPNU69MVr3wOnKFa5_G4apeCFBhxCVKNxo5l0AEmyIk/edit (either using google doc's zoom tool at the top left or the browser's zoom), the right side of the svg gets clipped out.
The bug doesn't happen without WebRender.
The bug doesn't happen with the same SVG file outside of google docs.
Attached image expected
Attached image actual
This is on OSX but I can repro on Linux as well.
Assignee: nobody → jmuizelaar
I've seen this on lots of google slide decks. Only happens for me when the window is stretched beyond 3300px or so (I can't reproduce this unless I plug my external monitor into my MBP, taking my horizontal resolution from 2880 to 3840).
Simply translating the rounded rectangle to left makes it draw so it seems like this has something to do with being far to the right
In case it helps, I only see the bug on a HiDPI screen, not on a normal one.
Keywords: regression
OS: Unspecified → All
Summary: Large SVG in google docs clipped incorrectly with WebRender → blob invalidation: Large SVG in google docs clipped incorrectly with WebRender
So it's looking a bit like this is not a blob image bug. The whole image is painted and appears to be there in the capture. It's just clipped when webrender draws it. I'm going to try to reduce the wr-capture and see where that gets me.
So it looks like this is a problem with precision. Reducing the scale of the coordinates in a wr-capture makes things draw properly. This suggests that it's unrelated to blob invalidation.

I'm passing it over to Glenn for now.
Assignee: jmuizelaar → gwatson
Summary: blob invalidation: Large SVG in google docs clipped incorrectly with WebRender → Large SVG in google docs clipped incorrectly with WebRender
A fix is here - https://github.com/servo/webrender/pull/3180. I still need to do a try run and reftest before merging though.
The try run looks good, and the patch has landed in WR, so this will be fixed by the next WR update.
Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.