Closed Bug 1492660 Opened 7 years ago Closed 7 years ago

feTurbulence fails to render with certain filter sizes when baseFrequency="0 <nonzero>"

Categories

(Core :: SVG, defect, P3)

defect

Tracking

()

RESOLVED FIXED
mozilla64
Tracking Status
firefox64 --- fixed

People

(Reporter: heycam, Assigned: heycam)

Details

Attachments

(2 files, 1 obsolete file)

Attached file test (obsolete) —
See attachment, which was distilled from https://twitter.com/chriscoyier/status/1042555713506013184. If I remove the filter primitive margin attributes (the x/y/width/height) or change the viewBox to say "0 0 30 20" then the turbulence is rendered. Using baseFrequency="0 3" seems to work just fine.
Attached file test
Attachment #9010495 - Attachment is obsolete: true
Assignee: nobody → cam
Status: NEW → ASSIGNED
Priority: -- → P3
The problem is that with the particular viewBox="" and filter primitive size in the test, we end up with a negative x-offset for the first turbulence tile. We normally correct negative offsets to a positive value with the EquivalentNonNegativeOffset call in SVGTurbulenceRenderer::Render, but that does not handle zero base frequency values correctly.
Comment on attachment 9010511 [details] Bug 1492660 - Deal with negative turbulence tile offsets when base frequency is zero Markus Stange [:mstange] has approved the revision.
Attachment #9010511 - Flags: review+
Pushed by cmccormack@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/e07781e939c6 Deal with negative turbulence tile offsets when base frequency is zero r=mstange
Status: ASSIGNED → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla64
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: