Bug 35547

Summary: Intermediate regions in libpixman aren't clipped to image
Product: pixman Reporter: Søren Sandmann Pedersen <soren.sandmann>
Component: pixmanAssignee: Søren Sandmann Pedersen <soren.sandmann>
Status: RESOLVED MOVED QA Contact: Søren Sandmann Pedersen <soren.sandmann>
Severity: normal    
Priority: high CC: billy.biggs, cairo-bugs, otaylor, siarhei.siamashka
Version: git master   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:

Description Søren Sandmann Pedersen 2011-03-22 08:26:22 UTC
This bug has come full circle. The server's software implementation has moved to pixman, so now this is a pixman bug. I'm leaving 2462 open since EXA/UXA have duplicated the code that contained the bug.


+++ This bug was initially created as a clone of Bug #2462 +++

In libpixman/ictrap.c:pixman_composite_trapezoids(), the bounding
box of the intermediate surface needs to be intersected with the
bounding box of the image (bailing immediately on empty intersection).

This should help a *lot* when zoomed in on a larger image.
Comment 1 Søren Sandmann Pedersen 2011-03-22 08:37:10 UTC
The bug here is in pixman_composite_trapezoids() the intermediate alpha image should only be the size of the clip region. This would prevent the rasterization of invisible trapezoids.
Comment 2 Siarhei Siamashka 2014-09-21 22:12:23 UTC
The importance seems to be set to 'high' for this bug. Is it just a performance problem? Do we have a simple testcase for it?
Comment 3 GitLab Migration User 2018-06-05 15:27:21 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/pixman/pixman/issues/12.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.