sw_engine: fix fastTrack condition

When checking the fastTrack condition,
it's necessary to exclude the outlines
with a Bezier curve (Move-Cubic-Line,
Move-Cubic-Close, Move-Line-Cubic).

@Issue: https://github.com/thorvg/thorvg/issues/2379
This commit is contained in:
Mira Grudzinska 2024-06-09 23:46:49 +02:00 committed by Hermet Park
parent 10cdfff20d
commit 45f73fd627

View file

@ -420,6 +420,7 @@ static bool _axisAlignedRect(const SwOutline* outline)
{
//Fast Track: axis-aligned rectangle?
if (outline->pts.count != 5) return false;
if (outline->types[2] == SW_CURVE_TYPE_CUBIC) return false;
auto pt1 = outline->pts.data + 0;
auto pt2 = outline->pts.data + 1;