tools/source/fsys/urlobj.cxx | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-)
New commits: commit da6ac377c6a4bb84ba4bdcc41e73c9079b009039 Author: Noel Grandin <[email protected]> AuthorDate: Tue Nov 23 12:15:42 2021 +0200 Commit: Noel Grandin <[email protected]> CommitDate: Tue Nov 23 13:47:16 2021 +0100 avoid OUString temporary in INetURLObject::changeScheme Change-Id: I8a97c1d89770fe2c0ba0d3f75ce9f3fec0df2e53 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125692 Tested-by: Jenkins Reviewed-by: Noel Grandin <[email protected]> diff --git a/tools/source/fsys/urlobj.cxx b/tools/source/fsys/urlobj.cxx index 085c6d2846f0..6f4dfd068304 100644 --- a/tools/source/fsys/urlobj.cxx +++ b/tools/source/fsys/urlobj.cxx @@ -1476,8 +1476,6 @@ bool INetURLObject::setAbsURIRef(OUString const & rTheAbsURIRef, } void INetURLObject::changeScheme(INetProtocol eTargetScheme) { - OUString aTmpStr=m_aAbsURIRef.toString(); - m_aAbsURIRef.setLength(0); int oldSchemeLen = 0; const OUString& rOldSchemeName = getSchemeInfo().m_sScheme; if (m_eScheme == INetProtocol::Generic) @@ -1487,8 +1485,8 @@ void INetURLObject::changeScheme(INetProtocol eTargetScheme) { m_eScheme=eTargetScheme; const OUString& rNewSchemeName = getSchemeInfo().m_sScheme; int newSchemeLen = rNewSchemeName.getLength(); - m_aAbsURIRef.append(rNewSchemeName); - m_aAbsURIRef.append(aTmpStr.getStr()+oldSchemeLen); + m_aAbsURIRef.remove(0, oldSchemeLen); + m_aAbsURIRef.insert(0, rNewSchemeName); int delta=newSchemeLen-oldSchemeLen; m_aUser+=delta; m_aAuth+=delta;
