From: Siarhei Siamashka Date: Mon, 10 Jan 2011 16:09:16 +0000 (+0200) Subject: Bugfix for a corner case in 'pixman_transform_is_inverse' X-Git-Tag: pixman-0.21.4~21 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=ae70b38d40a587e29dc5e0dfe6250693598beca7;p=platform%2Fupstream%2Fpixman.git Bugfix for a corner case in 'pixman_transform_is_inverse' 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. --- 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); }