From: Siarhei Siamashka <[email protected]>

When 'pixman_transform_multiply' fails, the result of multiplication just
could not have been identity matrix (one of the values in the resulting
matrix can't be represented as 16.16 fixed point value). So it is safe
to return FALSE.
---
 pixman/pixman-matrix.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/pixman/pixman-matrix.c b/pixman/pixman-matrix.c
index abdfa05..f2f67ab 100644
--- a/pixman/pixman-matrix.c
+++ b/pixman/pixman-matrix.c
@@ -425,7 +425,8 @@ pixman_transform_is_inverse (const struct pixman_transform 
*a,
 {
     struct pixman_transform t;
 
-    pixman_transform_multiply (&t, a, b);
+    if (!pixman_transform_multiply (&t, a, b))
+       return FALSE;
 
     return pixman_transform_is_identity (&t);
 }
-- 
1.7.2.2

_______________________________________________
Pixman mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/pixman

Reply via email to