Incorrect rendering triggered by cairo CAIRO_OPERATOR_SATURATE with subpixel positioning
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
pixman (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
Focal |
Fix Released
|
Undecided
|
Athos Ribeiro |
Bug Description
[ Impact ]
OpenSlide (libopenslide0 in Ubuntu) uses Cairo as its rendering backend, always with CAIRO_OPERATOR_
[ Test Plan ]
Compile and run the pixman.c test program uploaded to this bug. It should report "OK".
[ Where problems could occur ]
Problems would show up as incorrect pixel output from software that renders via Cairo or pixman.
[ Other Info ]
While I'm not a pixman expert, it appears that the change should only affect the broken code path, and it seems unlikely that anything else depends on the incorrect math fixed by this patch. This bug hasn't previously been reported in Ubuntu, which may imply that this code path is not exercised by other packages in the distro.
The affected source file has had no further commits upstream since this patch was applied in April 2019, and some basic commit grepping didn't turn up any followup fixes elsewhere in the tree.
[ Original message ]
pixman 0.38.4-0ubuntu1 in focal (and actually pixman 0.38.x generally) has a regression that causes incorrect rendering in some circumstances. This can be triggered by the use of cairo with CAIRO_OPERATOR_
The attached test program will print "Failed" if the bug exists, or "OK" if it doesn't.
This is fixed upstream in https:/
See https:/
description: | updated |
Changed in pixman (Ubuntu): | |
status: | New → Fix Released |
Changed in pixman (Ubuntu Focal): | |
status: | New → Triaged |
tags: |
added: verification-done-focal removed: verification-needed-focal |
tags: |
added: verification-done removed: verification-needed |
Changed in pixman (Ubuntu Focal): | |
status: | Fix Committed → Fix Released |
This is a debdiff for the focal version of pixman, 0.38.4-0ubuntu1. I've built and installed this and verified that the test case now reports "OK".