basctl/source/basicide/baside2.cxx                    |    4 +---
 basic/source/runtime/methods.cxx                      |   12 +++---------
 basic/source/runtime/runtime.cxx                      |   11 +++--------
 connectivity/source/drivers/file/FStringFunctions.cxx |    4 +---
 editeng/source/editeng/impedit3.cxx                   |    8 +++-----
 sc/source/core/data/table4.cxx                        |    4 +---
 sc/source/filter/xml/celltextparacontext.cxx          |    5 ++---
 svl/source/numbers/zforlist.cxx                       |    3 +--
 svl/source/numbers/zformat.cxx                        |    4 +---
 9 files changed, 16 insertions(+), 39 deletions(-)

New commits:
commit 02e946c1d172530f0defc1e8272fc2f7b31151d5
Author:     Mike Kaganski <[email protected]>
AuthorDate: Fri Aug 29 02:05:47 2025 +0500
Commit:     Mike Kaganski <[email protected]>
CommitDate: Fri Aug 29 06:11:45 2025 +0200

    Use RepeatedUChar in connectivity, editeng, sc and svl
    
    Change-Id: If7cae3388c644e2c1dacfc63dd904f7048f77070
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190344
    Reviewed-by: Mike Kaganski <[email protected]>
    Tested-by: Jenkins

diff --git a/connectivity/source/drivers/file/FStringFunctions.cxx 
b/connectivity/source/drivers/file/FStringFunctions.cxx
index d02c7cce1737..024a72a2fecb 100644
--- a/connectivity/source/drivers/file/FStringFunctions.cxx
+++ b/connectivity/source/drivers/file/FStringFunctions.cxx
@@ -154,9 +154,7 @@ ORowSetValue OOp_Space::operate(const ORowSetValue& lhs) 
const
         return lhs;
 
     sal_Int32 nCount = std::max(lhs.getInt32(), sal_Int32(0));
-    OUStringBuffer sRet(nCount);
-    comphelper::string::padToLength(sRet, nCount, ' ');
-    return sRet.makeStringAndClear();
+    return OUString(OUString::Concat(RepeatedUChar(' ', nCount)));
 }
 
 ORowSetValue OOp_Replace::operate(const std::vector<ORowSetValue>& lhs) const
diff --git a/editeng/source/editeng/impedit3.cxx 
b/editeng/source/editeng/impedit3.cxx
index f28e8bf9e550..f8a29522e5e2 100644
--- a/editeng/source/editeng/impedit3.cxx
+++ b/editeng/source/editeng/impedit3.cxx
@@ -3904,7 +3904,7 @@ void ImpEditEngine::StripAllPortions( OutputDevice& 
rOutDev, tools::Rectangle aC
                             break;
                             case PortionKind::TAB:
                             {
-                                if ( rTextPortion.GetExtraValue() && ( 
rTextPortion.GetExtraValue() != ' ' ) )
+                                if (auto c = rTextPortion.GetExtraValue(); c 
&& (c != ' '))
                                 {
                                     // calculate expanded text
                                     SeekCursor(rParaPortion.GetNode(), 
nIndex+1, aTmpFont, &rOutDev);
@@ -3912,7 +3912,7 @@ void ImpEditEngine::StripAllPortions( OutputDevice& 
rOutDev, tools::Rectangle aC
                                     aTmpFont.SetEscapement( 0 );
                                     aTmpFont.SetPhysFont(rOutDev);
                                     tools::Long nCharWidth = 
aTmpFont.QuickGetTextSize( &rOutDev,
-                                        
OUString(rTextPortion.GetExtraValue()), 0, 1, {} ).Width();
+                                        OUString(c), 0, 1, {} ).Width();
                                     sal_Int32 nChars = 2;
                                     if( nCharWidth )
                                         nChars = 
rTextPortion.GetSize().Width() / nCharWidth;
@@ -3922,9 +3922,7 @@ void ImpEditEngine::StripAllPortions( OutputDevice& 
rOutDev, tools::Rectangle aC
                                         nChars = 3; // looks better
 
                                     // create expanded text
-                                    OUStringBuffer aBuf(nChars);
-                                    comphelper::string::padToLength(aBuf, 
nChars, rTextPortion.GetExtraValue());
-                                    OUString aText(aBuf.makeStringAndClear());
+                                    OUString 
aText(OUString::Concat(RepeatedUChar(c, nChars)));
 
                                     // create EOL and EOP bools
                                     const bool bEndOfLine(nPortion == 
pLine->GetEndPortion());
diff --git a/sc/source/core/data/table4.cxx b/sc/source/core/data/table4.cxx
index ae641dea45cc..295cd1f442c7 100644
--- a/sc/source/core/data/table4.cxx
+++ b/sc/source/core/data/table4.cxx
@@ -127,9 +127,7 @@ OUString lcl_ValueString( sal_Int32 nValue, sal_uInt16 
nMinDigits )
         OUString aStr = OUString::number( std::abs( nValue ) );
         if ( aStr.getLength() < nMinDigits )
         {
-            OUStringBuffer aZero(nMinDigits);
-            comphelper::string::padToLength(aZero, nMinDigits - 
aStr.getLength(), '0');
-            aStr = aZero.append(aStr).makeStringAndClear();
+            aStr = RepeatedUChar('0', nMinDigits - aStr.getLength()) + aStr;
         }
         //  nMinDigits doesn't include the '-' sign -> add after inserting 
zeros
         if ( nValue < 0 )
diff --git a/sc/source/filter/xml/celltextparacontext.cxx 
b/sc/source/filter/xml/celltextparacontext.cxx
index 26293e7d8db9..c0fef3a8a59e 100644
--- a/sc/source/filter/xml/celltextparacontext.cxx
+++ b/sc/source/filter/xml/celltextparacontext.cxx
@@ -347,9 +347,8 @@ void ScXMLCellFieldSContext::PushSpaces()
             mrParentCxt.PushSpan(u" ", maStyleName);
         else
         {
-            OUStringBuffer aBuf( mnCount);
-            comphelper::string::padToLength( aBuf, mnCount, ' ');
-            mrParentCxt.PushSpan( aBuf.makeStringAndClear(), maStyleName);
+            mrParentCxt.PushSpan(Concat2View(OUString::Concat(RepeatedUChar(' 
', mnCount))),
+                                 maStyleName);
         }
     }
 }
diff --git a/svl/source/numbers/zforlist.cxx b/svl/source/numbers/zforlist.cxx
index ce8bfb8c9391..2ae7abe17465 100644
--- a/svl/source/numbers/zforlist.cxx
+++ b/svl/source/numbers/zforlist.cxx
@@ -3564,8 +3564,7 @@ OUString SvNFEngine::GenerateFormat(SvNFLanguageData& 
rCurrentLanguage,
     }
     if (nPrecision > 0 && eType != SvNumFormatType::FRACTION && !( eType & 
SvNumFormatType::TIME ) )
     {
-        sString.append(rCurrentLanguage.GetNumDecimalSep());
-        padToLength(sString, sString.getLength() + nPrecision, '0');
+        sString.append(rCurrentLanguage.GetNumDecimalSep() + 
RepeatedUChar('0', nPrecision));
     }
 
     // Native Number
diff --git a/svl/source/numbers/zformat.cxx b/svl/source/numbers/zformat.cxx
index d72d7202dfe0..65855709854a 100644
--- a/svl/source/numbers/zformat.cxx
+++ b/svl/source/numbers/zformat.cxx
@@ -6052,7 +6052,6 @@ bool SvNumberformat::IsMinuteSecondFormat() const
 OUString SvNumberformat::GetFormatStringForTimePrecision( int nPrecision ) 
const
 {
     OUStringBuffer sString;
-    using comphelper::string::padToLength;
 
     sal_uInt16 nNumForCnt = NumFor[0].GetCount();
     auto const & rTypeArray = NumFor[0].Info().nTypeArray;
@@ -6070,8 +6069,7 @@ OUString SvNumberformat::GetFormatStringForTimePrecision( 
int nPrecision ) const
                 }
                 if (nPrecision > 0)
                 {
-                    sString.append( rLoc().getTime100SecSep() );
-                    padToLength(sString, sString.getLength() + nPrecision, 
'0');
+                    sString.append(rLoc().getTime100SecSep() + 
RepeatedUChar('0', nPrecision));
                 }
                 break;
             case NF_SYMBOLTYPE_TIME100SECSEP:
commit d3504acf62c49d4aa67efe732967c58ed9caff8e
Author:     Mike Kaganski <[email protected]>
AuthorDate: Fri Aug 29 02:01:59 2025 +0500
Commit:     Mike Kaganski <[email protected]>
CommitDate: Fri Aug 29 06:11:38 2025 +0200

    Use RepeatedUChar in basctl and basic
    
    Change-Id: I87a6e802ef3720dd290ddbe202dad6a9220365c1
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/190343
    Tested-by: Jenkins
    Reviewed-by: Mike Kaganski <[email protected]>

diff --git a/basctl/source/basicide/baside2.cxx 
b/basctl/source/basicide/baside2.cxx
index 852e6204af50..5276895999d7 100644
--- a/basctl/source/basicide/baside2.cxx
+++ b/basctl/source/basicide/baside2.cxx
@@ -184,10 +184,8 @@ void lcl_ConvertTabsToSpaces( OUString& rLine )
         if ( aResult[nPos] == '        ' )
         {
             // not 4 Blanks, but at 4 TabPos:
-            OUStringBuffer aBlanker;
-            string::padToLength(aBlanker, ( 4 - ( nPos % 4 ) ), ' ');
             aResult.remove( nPos, 1 );
-            aResult.insert( nPos, aBlanker );
+            aResult.insert(nPos, OUString::Concat(RepeatedUChar(' ', 4 - (nPos 
% 4))));
             nMax = aResult.getLength();
         }
         ++nPos;
diff --git a/basic/source/runtime/methods.cxx b/basic/source/runtime/methods.cxx
index 33bd72e61e3f..fe427a0dbc9b 100644
--- a/basic/source/runtime/methods.cxx
+++ b/basic/source/runtime/methods.cxx
@@ -1300,9 +1300,7 @@ void SbRtl_Space(StarBASIC *, SbxArray & rPar, bool)
     }
 
     const sal_Int32 nCount = rPar.Get(1)->GetLong();
-    OUStringBuffer aBuf(nCount);
-    string::padToLength(aBuf, nCount, ' ');
-    rPar.Get(0)->PutString(aBuf.makeStringAndClear());
+    rPar.Get(0)->PutString(OUString::Concat(RepeatedUChar(' ', nCount)));
 }
 
 void SbRtl_Sqr(StarBASIC *, SbxArray & rPar, bool)
@@ -1466,9 +1464,7 @@ void SbRtl_String(StarBASIC *, SbxArray & rPar, bool)
         const OUString aStr = rPar.Get(2)->GetOUString();
         aFiller = aStr[0];
     }
-    OUStringBuffer aBuf(lCount);
-    string::padToLength(aBuf, lCount, aFiller);
-    rPar.Get(0)->PutString(aBuf.makeStringAndClear());
+    rPar.Get(0)->PutString(OUString::Concat(RepeatedUChar(aFiller, lCount)));
 }
 
 void SbRtl_Tab(StarBASIC *, SbxArray & rPar, bool)
@@ -1479,9 +1475,7 @@ void SbRtl_Tab(StarBASIC *, SbxArray & rPar, bool)
     }
 
     const sal_Int32 nCount = std::max(rPar.Get(1)->GetLong(), sal_Int32(0));
-    OUStringBuffer aStr(nCount);
-    comphelper::string::padToLength(aStr, nCount, '    ');
-    rPar.Get(0)->PutString(aStr.makeStringAndClear());
+    rPar.Get(0)->PutString(OUString::Concat(RepeatedUChar('    ', nCount)));
 }
 
 void SbRtl_Tan(StarBASIC *, SbxArray & rPar, bool)
diff --git a/basic/source/runtime/runtime.cxx b/basic/source/runtime/runtime.cxx
index bf0cefbc0e16..93775a086554 100644
--- a/basic/source/runtime/runtime.cxx
+++ b/basic/source/runtime/runtime.cxx
@@ -2083,17 +2083,14 @@ void SbiRuntime::StepRSET()
         sal_Int32 nVarStrLen = aRefVarString.getLength();
         sal_Int32 nValStrLen = aRefValString.getLength();
 
-        OUStringBuffer aNewStr(nVarStrLen);
         if (nVarStrLen > nValStrLen)
         {
-            comphelper::string::padToLength(aNewStr, nVarStrLen - nValStrLen, 
' ');
-            aNewStr.append(aRefValString);
+            refVar->PutString(RepeatedUChar(' ', nVarStrLen - nValStrLen) + 
aRefValString);
         }
         else
         {
-            aNewStr.append(aRefValString.subView(0, nVarStrLen));
+            refVar->PutString(aRefValString.copy(0, nVarStrLen));
         }
-        refVar->PutString(aNewStr.makeStringAndClear());
 
         refVar->SetFlags( n );
     }
@@ -4583,9 +4580,7 @@ void SbiRuntime::implHandleSbxFlags( SbxVariable* pVar, 
SbxDataType t, sal_uInt3
     if( bFixedString )
     {
         sal_uInt16 nCount = static_cast<sal_uInt16>( nOp2 >> 17 );      // len 
= all bits above 0x10000
-        OUStringBuffer aBuf(nCount);
-        comphelper::string::padToLength(aBuf, nCount);
-        pVar->PutString(aBuf.makeStringAndClear());
+        pVar->PutString(OUString::Concat(RepeatedUChar('
     }
 
     bool bVarToDim = ((nOp2 & SBX_TYPE_VAR_TO_DIM_FLAG) != 0);

Reply via email to