Kaydet (Commit) b8fdb4c9 authored tarafından Matteo Casalin's avatar Matteo Casalin

getToken: reuse known index information

Change-Id: I87f274addcba0776016e9996a0b568f503e2081a
Reviewed-on: https://gerrit.libreoffice.org/66939
Tested-by: Jenkins
Reviewed-by: 's avatarMatteo Casalin <matteo.casalin@yahoo.com>
üst be3cb2cb
...@@ -17,27 +17,30 @@ namespace font ...@@ -17,27 +17,30 @@ namespace font
{ {
OUString trimFontNameFeatures(OUString const& rFontName) OUString trimFontNameFeatures(OUString const& rFontName)
{ {
OUString sResultName(rFontName); const sal_Int32 nPrefixIdx{ rFontName.indexOf(vcl::font::FeaturePrefix) };
if (sResultName.indexOf(vcl::font::FeaturePrefix) < 0) if (nPrefixIdx < 0)
return sResultName; return rFontName;
return sResultName.getToken(0, vcl::font::FeaturePrefix); return rFontName.copy(0, nPrefixIdx);
} }
FeatureParser::FeatureParser(OUString const& rFontName) FeatureParser::FeatureParser(OUString const& rFontName)
{ {
if (rFontName.indexOf(vcl::font::FeaturePrefix) < 0) sal_Int32 nPrefixIdx{ rFontName.indexOf(vcl::font::FeaturePrefix) };
if (nPrefixIdx < 0)
return; return;
OUString sName = rFontName.getToken(1, vcl::font::FeaturePrefix); OUString sName = rFontName.getToken(0, vcl::font::FeaturePrefix, ++nPrefixIdx);
sal_Int32 nIndex = 0; sal_Int32 nIndex = 0;
do do
{ {
OUString sToken = sName.getToken(0, vcl::font::FeatureSeparator, nIndex); OUString sToken = sName.getToken(0, vcl::font::FeatureSeparator, nIndex);
OUString sID = sToken.getToken(0, '='); sal_Int32 nInnerIdx{ 0 };
OUString sValue = sToken.getToken(1, '='); OUString sID = sToken.getToken(0, '=', nInnerIdx);
OUString sValue = sToken.getToken(0, '=', nInnerIdx);
if (sID.getLength() == 4 && sValue != "0") if (sID.getLength() == 4 && sValue != "0")
{ {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment