[glyf] Don't translate/transform components if has no effect

pull/3681/head
Behdad Esfahbod 2 years ago
parent 2bb0fa878a
commit 30d58bfd0f
  1. 5
      src/hb-ot-var-gvar-table.hh

@ -63,6 +63,9 @@ struct contour_point_vector_t : hb_vector_t<contour_point_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<contour_point_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);
}

Loading…
Cancel
Save