diff --git a/src/hb-ot-var-gvar-table.hh b/src/hb-ot-var-gvar-table.hh index af56180c8..d91221b5c 100644 --- a/src/hb-ot-var-gvar-table.hh +++ b/src/hb-ot-var-gvar-table.hh @@ -63,6 +63,9 @@ struct contour_point_vector_t : hb_vector_t void transform (const float (&matrix)[4]) { + if (matrix[0] == 1.f && matrix[1] == 0.f && + matrix[2] == 0.f && matrix[3] == 1.f) + return; for (unsigned int i = 0; i < length; i++) { contour_point_t &p = (*this)[i]; @@ -74,6 +77,8 @@ struct contour_point_vector_t : hb_vector_t void translate (const contour_point_t& delta) { + if (delta.x == 0.f && delta.y == 0.f) + return; for (unsigned int i = 0; i < length; i++) (*this)[i].translate (delta); }