[gtk/transform-fixes: 3/5] Use matrix equality in GskTransform



commit 799bdfc7502da1db450a60040dd03c2de6dfc820
Author: Emmanuele Bassi <ebassi gnome org>
Date:   Fri Mar 22 12:38:36 2019 +0000

    Use matrix equality in GskTransform
    
    Graphene has new API to check for equality, so we should use it instead
    of doing a byte-by-byte comparison.

 gsk/gsktransform.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)
---
diff --git a/gsk/gsktransform.c b/gsk/gsktransform.c
index e45f21edb7..133f5820e5 100644
--- a/gsk/gsktransform.c
+++ b/gsk/gsktransform.c
@@ -419,8 +419,10 @@ gsk_matrix_transform_equal (GskTransform *first_transform,
   GskMatrixTransform *first = (GskMatrixTransform *) first_transform;
   GskMatrixTransform *second = (GskMatrixTransform *) second_transform;
 
-  /* Crude, but better than just returning FALSE */
-  return memcmp (&first->matrix, &second->matrix, sizeof (graphene_matrix_t)) == 0;
+  if (graphene_matrix_equal_fast (&first->matrix, &second->matrix))
+    return TRUE;
+
+  return graphene_matrix_equal (&first->matrix, &second->matrix);
 }
 
 static const GskTransformClass GSK_TRANSFORM_TRANSFORM_CLASS =


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]