framework/source/services/pathsettings.cxx |   23 +++++++++--------------
 1 file changed, 9 insertions(+), 14 deletions(-)

New commits:
commit 2e2304f00960d8e0e8c3ff76e632ef8f92608084
Author:     Noel Grandin <noel.gran...@collabora.co.uk>
AuthorDate: Wed May 25 09:25:03 2022 +0200
Commit:     Noel Grandin <noel.gran...@collabora.co.uk>
CommitDate: Wed May 25 13:01:35 2022 +0200

    elide temporary vector in PathSettings::impl_convertPath2OldStyle
    
    Change-Id: Ib86933ef564b0d27c47dbbaddaa55f03b8426c7b
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134927
    Tested-by: Jenkins
    Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk>

diff --git a/framework/source/services/pathsettings.cxx 
b/framework/source/services/pathsettings.cxx
index b5c30dc25809..aedaf3a31d67 100644
--- a/framework/source/services/pathsettings.cxx
+++ b/framework/source/services/pathsettings.cxx
@@ -942,30 +942,25 @@ void PathSettings::impl_subst(PathSettings::PathInfo& 
aPath   ,
 
 OUString PathSettings::impl_convertPath2OldStyle(const PathSettings::PathInfo& 
rPath) const
 {
-    std::vector<OUString> lTemp;
-    lTemp.reserve(rPath.lInternalPaths.size() + rPath.lUserPaths.size() + 1);
+    OUStringBuffer sPathVal(256);
 
     for (auto const& internalPath : rPath.lInternalPaths)
     {
-        lTemp.push_back(internalPath);
+        if (sPathVal.getLength())
+            sPathVal.append(";");
+        sPathVal.append(internalPath);
     }
     for (auto const& userPath : rPath.lUserPaths)
     {
-        lTemp.push_back(userPath);
+        if (sPathVal.getLength())
+            sPathVal.append(";");
+        sPathVal.append(userPath);
     }
-
     if (!rPath.sWritePath.isEmpty())
-        lTemp.push_back(rPath.sWritePath);
-
-    OUStringBuffer sPathVal(256);
-    for (  auto pIt  = lTemp.begin();
-           pIt != lTemp.end();
-                               )
     {
-        sPathVal.append(*pIt);
-        ++pIt;
-        if (pIt != lTemp.end())
+        if (sPathVal.getLength())
             sPathVal.append(";");
+        sPathVal.append(rPath.sWritePath);
     }
 
     return sPathVal.makeStringAndClear();

Reply via email to