summaryrefslogtreecommitdiff
path: root/sw/source/filter/ww8
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2021-09-22 17:18:06 +0200
committerStephan Bergmann <sbergman@redhat.com>2021-09-22 19:59:56 +0200
commitd1e14030e81ff2bbe4bcb3706a9f21672a368074 (patch)
tree713e59ead818f81e599c9757dd87468326795173 /sw/source/filter/ww8
parent743e6aa211ccd631c811fb57e2050a5b4e8ffbba (diff)
Extend loplugin:stringviewparam to starts/endsWith: sw
Change-Id: I7271bba6c61a56be15335c81d8950a29a07eb6d4 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122473 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Diffstat (limited to 'sw/source/filter/ww8')
-rw-r--r--sw/source/filter/ww8/docxattributeoutput.cxx51
-rw-r--r--sw/source/filter/ww8/docxattributeoutput.hxx4
-rw-r--r--sw/source/filter/ww8/rtfexport.cxx11
-rw-r--r--sw/source/filter/ww8/ww8par5.cxx6
4 files changed, 41 insertions, 31 deletions
diff --git a/sw/source/filter/ww8/docxattributeoutput.cxx b/sw/source/filter/ww8/docxattributeoutput.cxx
index f764fe980c0c..a78211445782 100644
--- a/sw/source/filter/ww8/docxattributeoutput.cxx
+++ b/sw/source/filter/ww8/docxattributeoutput.cxx
@@ -138,6 +138,7 @@
#include <txtatr.hxx>
#include <frameformats.hxx>
+#include <o3tl/string_view.hxx>
#include <o3tl/unit_conversion.hxx>
#include <osl/file.hxx>
#include <utility>
@@ -152,6 +153,7 @@
#include <com/sun/star/embed/Aspects.hpp>
#include <algorithm>
+#include <cstddef>
#include <stdarg.h>
#include <string_view>
@@ -1787,33 +1789,34 @@ void DocxAttributeOutput::DoWriteBookmarksEnd(std::vector<OUString>& rEnds)
// - "permission-for-user:<permission-id>:<permission-user-name>"
// - "permission-for-group:<permission-id>:<permission-group-name>"
//
-void DocxAttributeOutput::DoWritePermissionTagStart(const OUString & permission)
+void DocxAttributeOutput::DoWritePermissionTagStart(std::u16string_view permission)
{
- OUString permissionIdAndName;
+ std::u16string_view permissionIdAndName;
- if (permission.startsWith("permission-for-group:", &permissionIdAndName))
+ if (o3tl::starts_with(permission, u"permission-for-group:", &permissionIdAndName))
{
- const sal_Int32 separatorIndex = permissionIdAndName.indexOf(':');
- assert(separatorIndex != -1);
- const OUString permissionId = permissionIdAndName.copy(0, separatorIndex);
- const OUString permissionName = permissionIdAndName.copy(separatorIndex + 1);
+ const std::size_t separatorIndex = permissionIdAndName.find(u':');
+ assert(separatorIndex != std::u16string_view::npos);
+ const std::u16string_view permissionId = permissionIdAndName.substr(0, separatorIndex);
+ const std::u16string_view permissionName = permissionIdAndName.substr(separatorIndex + 1);
m_pSerializer->singleElementNS(XML_w, XML_permStart,
- FSNS(XML_w, XML_id), BookmarkToWord(permissionId),
- FSNS(XML_w, XML_edGrp), BookmarkToWord(permissionName));
+ FSNS(XML_w, XML_id), BookmarkToWord(OUString(permissionId)),
+ FSNS(XML_w, XML_edGrp), BookmarkToWord(OUString(permissionName)));
}
else
{
- auto const ok = permission.startsWith("permission-for-user:", &permissionIdAndName);
+ auto const ok = o3tl::starts_with(
+ permission, u"permission-for-user:", &permissionIdAndName);
assert(ok); (void)ok;
- const sal_Int32 separatorIndex = permissionIdAndName.indexOf(':');
- assert(separatorIndex != -1);
- const OUString permissionId = permissionIdAndName.copy(0, separatorIndex);
- const OUString permissionName = permissionIdAndName.copy(separatorIndex + 1);
+ const std::size_t separatorIndex = permissionIdAndName.find(u':');
+ assert(separatorIndex != std::u16string_view::npos);
+ const std::u16string_view permissionId = permissionIdAndName.substr(0, separatorIndex);
+ const std::u16string_view permissionName = permissionIdAndName.substr(separatorIndex + 1);
m_pSerializer->singleElementNS(XML_w, XML_permStart,
- FSNS(XML_w, XML_id), BookmarkToWord(permissionId),
- FSNS(XML_w, XML_ed), BookmarkToWord(permissionName));
+ FSNS(XML_w, XML_id), BookmarkToWord(OUString(permissionId)),
+ FSNS(XML_w, XML_ed), BookmarkToWord(OUString(permissionName)));
}
}
@@ -1825,20 +1828,20 @@ void DocxAttributeOutput::DoWritePermissionTagStart(const OUString & permission)
// - "permission-for-user:<permission-id>:<permission-user-name>"
// - "permission-for-group:<permission-id>:<permission-group-name>"
//
-void DocxAttributeOutput::DoWritePermissionTagEnd(const OUString & permission)
+void DocxAttributeOutput::DoWritePermissionTagEnd(std::u16string_view permission)
{
- OUString permissionIdAndName;
+ std::u16string_view permissionIdAndName;
- auto const ok = permission.startsWith("permission-for-group:", &permissionIdAndName) ||
- permission.startsWith("permission-for-user:", &permissionIdAndName);
+ auto const ok = o3tl::starts_with(permission, u"permission-for-group:", &permissionIdAndName) ||
+ o3tl::starts_with(permission, u"permission-for-user:", &permissionIdAndName);
assert(ok); (void)ok;
- const sal_Int32 separatorIndex = permissionIdAndName.indexOf(':');
- assert(separatorIndex != -1);
- const OUString permissionId = permissionIdAndName.copy(0, separatorIndex);
+ const std::size_t separatorIndex = permissionIdAndName.find(u':');
+ assert(separatorIndex != std::u16string_view::npos);
+ const std::u16string_view permissionId = permissionIdAndName.substr(0, separatorIndex);
m_pSerializer->singleElementNS(XML_w, XML_permEnd,
- FSNS(XML_w, XML_id), BookmarkToWord(permissionId));
+ FSNS(XML_w, XML_id), BookmarkToWord(OUString(permissionId)));
}
/// Write the start permissions
diff --git a/sw/source/filter/ww8/docxattributeoutput.hxx b/sw/source/filter/ww8/docxattributeoutput.hxx
index 7f880cc506c4..e8b47febbefa 100644
--- a/sw/source/filter/ww8/docxattributeoutput.hxx
+++ b/sw/source/filter/ww8/docxattributeoutput.hxx
@@ -703,8 +703,8 @@ private:
void DoWriteBookmarkStartIfExist(sal_Int32 nRunPos);
void DoWriteBookmarkEndIfExist(sal_Int32 nRunPos);
- void DoWritePermissionTagStart(const OUString & permission);
- void DoWritePermissionTagEnd(const OUString & permission);
+ void DoWritePermissionTagStart(std::u16string_view permission);
+ void DoWritePermissionTagEnd(std::u16string_view permission);
void DoWritePermissionsStart();
void DoWritePermissionsEnd();
diff --git a/sw/source/filter/ww8/rtfexport.cxx b/sw/source/filter/ww8/rtfexport.cxx
index fae7931e9b4d..46a0d367c2ca 100644
--- a/sw/source/filter/ww8/rtfexport.cxx
+++ b/sw/source/filter/ww8/rtfexport.cxx
@@ -17,6 +17,10 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
+#include <sal/config.h>
+
+#include <string_view>
+
#include "rtfexport.hxx"
#include "rtfexportfilter.hxx"
@@ -51,6 +55,7 @@
#include <svtools/rtfkeywd.hxx>
#include <filter/msfilter/rtfutil.hxx>
#include <unotools/docinfohelper.hxx>
+#include <o3tl/string_view.hxx>
#include <osl/diagnose.h>
#include <rtl/tencinfo.h>
#include <sal/log.hxx>
@@ -1445,17 +1450,17 @@ private:
bool m_bOutOutlineOnly;
public:
- SwRTFWriter(const OUString& rFilterName, const OUString& rBaseURL);
+ SwRTFWriter(std::u16string_view rFilterName, const OUString& rBaseURL);
ErrCode WriteStream() override;
};
}
-SwRTFWriter::SwRTFWriter(const OUString& rFilterName, const OUString& rBaseURL)
+SwRTFWriter::SwRTFWriter(std::u16string_view rFilterName, const OUString& rBaseURL)
{
SetBaseURL(rBaseURL);
// export outline nodes, only (send outline to clipboard/presentation)
- m_bOutOutlineOnly = rFilterName.startsWith("O");
+ m_bOutOutlineOnly = o3tl::starts_with(rFilterName, u"O");
}
ErrCode SwRTFWriter::WriteStream()
diff --git a/sw/source/filter/ww8/ww8par5.cxx b/sw/source/filter/ww8/ww8par5.cxx
index b9cc9d24c700..19991a2ebc18 100644
--- a/sw/source/filter/ww8/ww8par5.cxx
+++ b/sw/source/filter/ww8/ww8par5.cxx
@@ -77,11 +77,13 @@
#include "ww8par.hxx"
#include "writerhelper.hxx"
#include <o3tl/safeint.hxx>
+#include <o3tl/string_view.hxx>
#include <unotools/fltrcfg.hxx>
#include <xmloff/odffields.hxx>
#include <osl/diagnose.h>
#include <algorithm>
+#include <string_view>
#define MAX_FIELDLEN 64000
@@ -98,9 +100,9 @@ using namespace nsSwDocInfoSubType;
namespace
{
// #120879# - helper method to identify a bookmark name to match the internal TOC bookmark naming convention
- bool IsTOCBookmarkName(const OUString& rName)
+ bool IsTOCBookmarkName(std::u16string_view rName)
{
- return rName.startsWith("_Toc") || rName.startsWith(OUString(IDocumentMarkAccess::GetCrossRefHeadingBookmarkNamePrefix()+"_Toc"));
+ return o3tl::starts_with(rName, u"_Toc") || o3tl::starts_with(rName, OUString(IDocumentMarkAccess::GetCrossRefHeadingBookmarkNamePrefix()+"_Toc"));
}
OUString EnsureTOCBookmarkName(const OUString& rName)