diff options
author | Noel <noelgrandin@gmail.com> | 2020-11-06 20:01:50 +0200 |
---|---|---|
committer | Noel Grandin <noel.grandin@collabora.co.uk> | 2020-11-11 11:58:37 +0100 |
commit | 93c64a61f2c84e684050294a1391cd32425b7837 (patch) | |
tree | 00aad2cb8f3ee29ba4ac99e159e26fb8d71d2f33 /desktop/source/lib/init.cxx | |
parent | 1fde62018c8d3344a3408c7b6317120aefc778fb (diff) |
loplugin:stringview
Add new methods "subView" to O(U)String to return substring views
of the underlying data.
Add a clang plugin to warn when replacing existing calls to copy()
would be better to use subView().
Change-Id: I03a5732431ce60808946f2ce2c923b22845689ca
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105420
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'desktop/source/lib/init.cxx')
-rw-r--r-- | desktop/source/lib/init.cxx | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx index 8eacd7e270ce..9aec16e027cb 100644 --- a/desktop/source/lib/init.cxx +++ b/desktop/source/lib/init.cxx @@ -991,7 +991,7 @@ OUString desktop::extractParameter(OUString& rOptions, const OUString& rName) if (nComma >= 0) { aValue = rOptions.copy(nIndex + nLen, nComma - nIndex - nLen); - rOptions = rOptions.copy(0, nIndex) + rOptions.copy(nComma); + rOptions = OUString::Concat(rOptions.subView(0, nIndex)) + rOptions.subView(nComma); } else { @@ -2563,19 +2563,15 @@ static int doc_saveAs(LibreOfficeKitDocument* pThis, const char* sUrl, const cha if ((aIndex = aFilterOptions.indexOf(",Watermark=")) >= 0) { int bIndex = aFilterOptions.indexOf("WATERMARKEND"); - watermarkText = aFilterOptions.copy(aIndex+11, bIndex-(aIndex+11)); - - OUString temp = aFilterOptions.copy(0, aIndex); - aFilterOptions = temp + aFilterOptions.copy(bIndex+12); + watermarkText = aFilterOptions.subView(aIndex+11, bIndex-(aIndex+11)); + aFilterOptions = OUString::Concat(aFilterOptions.subView(0, aIndex)) + aFilterOptions.subView(bIndex+12); } if ((aIndex = aFilterOptions.indexOf(",FullSheetPreview=")) >= 0) { int bIndex = aFilterOptions.indexOf("FULLSHEETPREVEND"); - sFullSheetPreview = aFilterOptions.copy(aIndex+18, bIndex-(aIndex+18)); - - OUString temp = aFilterOptions.copy(0, aIndex); - aFilterOptions = temp + aFilterOptions.copy(bIndex+16); + sFullSheetPreview = aFilterOptions.subView(aIndex+18, bIndex-(aIndex+18)); + aFilterOptions = OUString::Concat(aFilterOptions.subView(0, aIndex)) + aFilterOptions.subView(bIndex+16); } bool bFullSheetPreview = sFullSheetPreview == "true"; |