Closed Bug 1637796 Opened 4 years ago Closed 4 years ago

WebRender does not handle mask render tasks that exceed the maximum task size

Categories

(Core :: Graphics: WebRender, defect)

defect

Tracking

()

RESOLVED FIXED
mozilla78
Tracking Status
firefox-esr68 --- disabled
firefox76 --- wontfix
firefox77 --- wontfix
firefox78 --- fixed

People

(Reporter: cbrewster, Assigned: cbrewster)

References

(Blocks 1 open bug)

Details

(Keywords: crash)

Crash Data

Attachments

(3 files, 1 obsolete file)

Attached file test-case.yaml

I ran into this while testing a patch for bug 1559861. This can happen if there is a very large clip that requires a mask render task which is applied to a picture that forms a raster root.

Mask render tasks are created in the following places:
https://searchfox.org/mozilla-central/rev/9f074fab9bf905fad62e7cc32faf121195f4ba46/gfx/wr/webrender/src/prim_store/mod.rs#4270
https://searchfox.org/mozilla-central/rev/9f074fab9bf905fad62e7cc32faf121195f4ba46/gfx/wr/webrender/src/prim_store/mod.rs#1057

We should downscale the masks so they fit within the maximum render task size. However, I am not sure if we can change the device pixel scale of the mask without it breaking other things.

Attachment #9148200 - Attachment mime type: text/x-yaml → text/plain
Attached file test-case.html

This is an additional HTML test-case which currently hits the max render task size assertion

Blocks: wr-stability
Crash Signature: [@ webrender::render_task::render_task_sanity_check ]
Keywords: crash
Assignee: nobody → connorbrewster
Status: NEW → ASSIGNED
Attachment #9149842 - Attachment is obsolete: true
Pushed by dluca@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/115f94af4353 Scale down mask render tasks if they exceed the maximum size r=gw
Status: ASSIGNED → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla78
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: