SVGPathStringSource should not up-convert 8-bit strings to UTF-16
https://bugs.webkit.org/show_bug.cgi?id=108050
Reviewed by Anders Carlsson.
Should save around ~400k on Membuster3.
* svg/SVGParserUtilities.cpp:
(WebCore::parseNumber):
(WebCore::genericParseArcFlag):
(WebCore::parseArcFlag):
* svg/SVGParserUtilities.h:
Add LChar variants of parseNumber and parseArcFlag.
* svg/SVGPathSource.h:
(WebCore):
Move forward declaration of FloatPoint here, where it belongs.
* svg/SVGPathStringSource.cpp:
(WebCore::parseFloatPoint):
(WebCore::parseFloatPoint2):
(WebCore::parseFloatPoint3):
Add helpers for parsing float points.
(WebCore::SVGPathStringSource::SVGPathStringSource):
(WebCore::SVGPathStringSource::hasMoreData):
(WebCore::SVGPathStringSource::moveToNextToken):
(WebCore::parseSVGSegmentTypeHelper):
(WebCore::SVGPathStringSource::parseSVGSegmentType):
(WebCore::nextCommandHelper):
(WebCore::SVGPathStringSource::nextCommand):
(WebCore::SVGPathStringSource::parseMoveToSegment):
(WebCore::SVGPathStringSource::parseLineToSegment):
(WebCore::SVGPathStringSource::parseLineToHorizontalSegment):
(WebCore::SVGPathStringSource::parseLineToVerticalSegment):
(WebCore::SVGPathStringSource::parseCurveToCubicSegment):
(WebCore::SVGPathStringSource::parseCurveToCubicSmoothSegment):
(WebCore::SVGPathStringSource::parseCurveToQuadraticSegment):
(WebCore::SVGPathStringSource::parseCurveToQuadraticSmoothSegment):
(WebCore::parseArcToSegmentHelper):
(WebCore::SVGPathStringSource::parseArcToSegment):
* svg/SVGPathStringSource.h:
(SVGPathStringSource):
Make 8-bit aware.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140985 268f45cc-cd09-0410-ab3c-d52691b4dbfc
6 files changed