pixman: Branch 'master'

Søren Sandmann Pedersen sandmann at kemper.freedesktop.org
Fri Jun 15 11:45:47 PDT 2007


 pixman/pixman-image.c |   14 ++++++++++++++
 1 files changed, 14 insertions(+)

New commits:
diff-tree 451a0510324491e82269d8e0d997ee4707ba8df8 (from cd9c484f0d8cef0cc243a73de5a8d742b8678230)
Author: Søren Sandmann Pedersen <sandmann at redhat.com>
Date:   Fri Jun 15 14:33:57 2007 -0400

    When setting identity transformations store them as NULL to prevent
    
    hitting the general compositing code.

diff --git a/pixman/pixman-image.c b/pixman/pixman-image.c
index 8657c31..c08e8fc 100644
--- a/pixman/pixman-image.c
+++ b/pixman/pixman-image.c
@@ -371,11 +371,25 @@ pixman_bool_t
 pixman_image_set_transform (pixman_image_t           *image,
 			    const pixman_transform_t *transform)
 {
+    static const pixman_transform_t id =
+    {
+	{ { pixman_fixed_1, 0, 0 },
+	  { 0, pixman_fixed_1, 0 },
+	  { 0, 0, pixman_fixed_1 }
+	}
+    };
+    
     image_common_t *common = (image_common_t *)image;
 
     if (common->transform == transform)
 	return TRUE;
 
+    if (memcmp (&id, transform, sizeof (pixman_transform_t)) == 0)
+    {
+	transform = NULL;
+	return TRUE;
+    }
+    
     if (common->transform)
 	free (common->transform);
 


More information about the xorg-commit mailing list