diff options
author | Noel Grandin <noel.grandin@collabora.co.uk> | 2022-04-29 11:06:33 +0200 |
---|---|---|
committer | Noel Grandin <noel.grandin@collabora.co.uk> | 2022-05-01 08:30:18 +0200 |
commit | 5200a73627d13e2997f81b53f61e143e77e328ee (patch) | |
tree | f95c8346d061ecd0ad33d574895d18e169662785 /writerfilter | |
parent | b90d3d316dd9c720c83180b31f6bbd7003fead78 (diff) |
use more string_view in various
found by examining uses of OUString::copy() for likely places
Change-Id: I6ff20e7b273ad6005410b82719183c1122f8c018
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133617
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'writerfilter')
-rw-r--r-- | writerfilter/source/dmapper/DomainMapper_Impl.cxx | 14 | ||||
-rw-r--r-- | writerfilter/source/rtftok/rtfsdrimport.cxx | 20 |
2 files changed, 18 insertions, 16 deletions
diff --git a/writerfilter/source/dmapper/DomainMapper_Impl.cxx b/writerfilter/source/dmapper/DomainMapper_Impl.cxx index b59b9eac066f..d6fe9acc67da 100644 --- a/writerfilter/source/dmapper/DomainMapper_Impl.cxx +++ b/writerfilter/source/dmapper/DomainMapper_Impl.cxx @@ -5488,13 +5488,15 @@ void DomainMapper_Impl::handleRubyEQField( const FieldContextPtr& pContext) if (nEnd <= nIndex) return; - OUString sRubyParts = rCommand.copy(nIndex+1,nEnd-nIndex-1); + std::u16string_view sRubyParts = rCommand.subView(nIndex+1,nEnd-nIndex-1); nIndex = 0; - OUString sPart1 = sRubyParts.getToken(0, ',', nIndex); - OUString sPart2 = sRubyParts.getToken(0, ',', nIndex); - if ((nIndex = sPart1.indexOf('(')) != -1 && (nEnd = sPart1.lastIndexOf(')'))!=-1 && nEnd > nIndex) + std::u16string_view sPart1 = o3tl::getToken(sRubyParts, 0, ',', nIndex); + std::u16string_view sPart2 = o3tl::getToken(sRubyParts, 0, ',', nIndex); + size_t nIndex2 = 0; + size_t nEnd2 = 0; + if ((nIndex2 = sPart1.find('(')) != std::u16string_view::npos && (nEnd2 = sPart1.rfind(')')) != std::u16string_view::npos && nEnd2 > nIndex2) { - aInfo.sRubyText = sPart1.copy(nIndex+1,nEnd-nIndex-1); + aInfo.sRubyText = sPart1.substr(nIndex2+1,nEnd2-nIndex2-1); } PropertyMapPtr pRubyContext(new PropertyMap()); @@ -5518,7 +5520,7 @@ void DomainMapper_Impl::handleRubyEQField( const FieldContextPtr& pContext) if ( aInfo.nRubyAlign == NS_ooxml::LN_Value_ST_RubyAlign_rightVertical ) pCharContext->Insert(PROP_RUBY_POSITION, uno::makeAny(css::text::RubyPosition::INTER_CHARACTER)); pCharContext->Insert(PROP_RUBY_STYLE, uno::makeAny(aInfo.sRubyStyle)); - appendTextPortion(sPart2, pCharContext); + appendTextPortion(OUString(sPart2), pCharContext); } diff --git a/writerfilter/source/rtftok/rtfsdrimport.cxx b/writerfilter/source/rtftok/rtfsdrimport.cxx index aa35c03351db..44bbc725137c 100644 --- a/writerfilter/source/rtftok/rtfsdrimport.cxx +++ b/writerfilter/source/rtftok/rtfsdrimport.cxx @@ -488,15 +488,15 @@ void RTFSdrImport::resolve(RTFShape& rShape, bool bClose, ShapeOrPict const shap sal_Int32 nCharIndex = 0; // Character index do { - OUString aToken = rProperty.second.getToken(0, ';', nCharIndex); + std::u16string_view aToken = o3tl::getToken(rProperty.second, 0, ';', nCharIndex); if (!nSize) - nSize = aToken.toInt32(); + nSize = o3tl::toInt32(aToken); else if (!nCount) - nCount = aToken.toInt32(); - else if (aToken.getLength()) + nCount = o3tl::toInt32(aToken); + else if (!aToken.empty()) { // The coordinates are in an (x,y) form. - aToken = aToken.copy(1, aToken.getLength() - 2); + aToken = aToken.substr(1, aToken.size() - 2); sal_Int32 nI = 0; sal_Int32 nX = o3tl::toInt32(o3tl::getToken(aToken, 0, ',', nI)); sal_Int32 nY @@ -835,15 +835,15 @@ void RTFSdrImport::resolve(RTFShape& rShape, bool bClose, ShapeOrPict const shap sal_Int32 nCharIndex = 0; // Character index do { - OUString aToken = rProperty.second.getToken(0, ';', nCharIndex); + std::u16string_view aToken = o3tl::getToken(rProperty.second, 0, ';', nCharIndex); if (!nSize) - nSize = aToken.toInt32(); + nSize = o3tl::toInt32(aToken); else if (!nCount) - nCount = aToken.toInt32(); - else if (aToken.getLength()) + nCount = o3tl::toInt32(aToken); + else if (!aToken.empty()) { // The coordinates are in an (x,y) form. - aToken = aToken.copy(1, aToken.getLength() - 2); + aToken = aToken.substr(1, aToken.size() - 2); sal_Int32 nI = 0; sal_Int32 nX = o3tl::toInt32(o3tl::getToken(aToken, 0, ',', nI)); sal_Int32 nY |