Testing requested for pixman 0.16.1
Soeren Sandmann
sandmann at daimi.au.dk
Tue Sep 15 06:04:00 PDT 2009
Hi,
As far as I am aware pixman 0.16.2 is ready to be released. If anyone
know of any other bugs or fixes that need to go in, let me know.
Otherwise, please test this snapshot:
http://www.freedesktop.org/~sandmann/pixman-0.16.1.tar.gz
especially if you have an unusual platform such as ARM or
PowerPC. Interesting tests:
- Does it build?
- Do test/blitters-test and test/scaling-test pass?
- Does your X server work when it is installed?
- Does the cairo test suite pass with it installed?
I would also appreciate an extra look at the patch below that I just
cherry-picked to 0.16. Did I get the inequality signs right? It's
supposed to test whether the "extents" box is completely contained
within the image.
Thanks,
Soren
commit 77627554bcc81f4aa3cb81f8158075aa6f20eca1
Author: Søren Sandmann Pedersen <sandmann at redhat.com>
Date: Thu Sep 10 21:33:24 2009 -0400
Fix off-by-one error in
source_image_needs_out_of_bounds_workaround()
If extents->x2/y2 are equal to image->width/height, then the clip
is still inside the drawable, so no workaround is necessary.
diff --git a/pixman/pixman-bits-image.c b/pixman/pixman-bits-image.c
index 6b80189..4e78ce1 100644
--- a/pixman/pixman-bits-image.c
+++ b/pixman/pixman-bits-image.c
@@ -612,14 +612,14 @@ source_image_needs_out_of_bounds_workaround
(bits_image_t *image)
{
if (!image->common.client_clip)
{
- /* There is no client clip, so the drawable in question
- * is a window if the clip region extends beyond the
- * drawable geometry.
+ /* There is no client clip, so if the clip region extends beyond the
+ * drawable geometry, it must be because the X server generated the
+ * bogus clip region.
*/
const pixman_box32_t *extents = pixman_region32_extents (&image->common.clip_region);
- if (extents->x1 >= 0 && extents->x2 < image->width &&
- extents->y1 >= 0 && extents->y2 < image->height)
+ if (extents->x1 >= 0 && extents->x2 <= image->width &&
+ extents->y1 >= 0 && extents->y2 <= image->height)
{
return FALSE;
}
More information about the xorg-devel
mailing list