Only do region lookups when the source region is different from the full region
authorSøren Sandmann Pedersen <sandmann@redhat.com>
Wed, 20 May 2009 12:28:54 +0000 (08:28 -0400)
committerSøren Sandmann Pedersen <sandmann@redhat.com>
Tue, 2 Jun 2009 20:54:08 +0000 (16:54 -0400)
pixman/pixman-transformed.c

index 015e247..2b95a2e 100644 (file)
@@ -87,7 +87,8 @@ do_fetch (bits_image_t *pict, int x, int y, fetchPixelProc32 fetch,
 static void
 fetch_pixels_src_clip (bits_image_t *image, uint32_t *buffer, int n_pixels)
 {
-    if (image->common.src_clip != &(image->common.full_region))
+    if (image->common.src_clip != &(image->common.full_region) &&
+       !pixman_region32_equal (image->common.src_clip, &(image->common.full_region)))
     {
        int32_t *coords = (int32_t *)buffer;
        int i;