accessibility/source/extended/AccessibleGridControlTable.cxx |    3 
 basic/source/classes/sb.cxx                                  |    5 -
 basic/source/classes/sbunoobj.cxx                            |    3 
 dbaccess/source/core/api/RowSet.cxx                          |    3 
 dbaccess/source/ui/querydesign/QueryDesignView.cxx           |    3 
 desktop/source/lib/init.cxx                                  |    4 -
 extensions/source/logging/loggerconfig.cxx                   |    7 --
 filter/source/xsltfilter/OleHandler.cxx                      |    3 
 filter/source/xsltfilter/XSLTFilter.cxx                      |    3 
 framework/source/uielement/generictoolbarcontroller.cxx      |    7 --
 include/vcl/weld.hxx                                         |    2 
 sc/source/ui/unoobj/dapiuno.cxx                              |    3 
 sc/source/ui/view/output.cxx                                 |    6 -
 sd/source/ui/slideshow/slideshow.cxx                         |    6 -
 svx/source/sdr/primitive2d/sdrtextprimitive2d.cxx            |    2 
 svx/source/smarttags/SmartTagMgr.cxx                         |    3 
 sw/source/core/txtnode/attrcontentcontrol.cxx                |    3 
 sw/source/filter/ww8/attributeoutputbase.hxx                 |   28 ++++----
 sw/source/filter/ww8/docxattributeoutput.hxx                 |   30 ++++----
 sw/source/filter/ww8/docxtableexport.cxx                     |   34 +++++----
 sw/source/filter/ww8/rtfattributeoutput.cxx                  |   32 +++++----
 sw/source/filter/ww8/rtfattributeoutput.hxx                  |   38 ++++++-----
 sw/source/filter/ww8/wrtww8.cxx                              |   28 ++++----
 sw/source/filter/ww8/ww8attributeoutput.hxx                  |   28 ++++----
 sw/source/uibase/utlui/glbltree.cxx                          |    3 
 vcl/inc/jsdialog/jsdialogbuilder.hxx                         |    6 -
 vcl/inc/salvtables.hxx                                       |    2 
 vcl/jsdialog/jsdialogbuilder.cxx                             |   12 +--
 vcl/source/app/salvtables.cxx                                |    4 -
 vcl/source/font/FeatureParser.cxx                            |    3 
 vcl/source/gdi/pdfextoutdevdata.cxx                          |    3 
 vcl/unx/gtk3/fpicker/SalGtkFolderPicker.cxx                  |    4 -
 vcl/unx/gtk3/gtkinst.cxx                                     |    3 
 xmloff/source/chart/SchXMLChartContext.cxx                   |    3 
 xmloff/source/text/txtlists.cxx                              |    4 -
 35 files changed, 163 insertions(+), 168 deletions(-)

New commits:
commit 21dd05a2a2909470f4bba76b0b10b3889043a10b
Author:     Caolán McNamara <[email protected]>
AuthorDate: Tue Dec 19 08:47:47 2023 +0000
Commit:     Caolán McNamara <[email protected]>
CommitDate: Tue Dec 19 17:18:42 2023 +0100

    cid#1557601 COPY_INSTEAD_OF_MOVE
    
    and
    
    cid#1546498 COPY_INSTEAD_OF_MOVE
    cid#1546384 COPY_INSTEAD_OF_MOVE
    cid#1546376 COPY_INSTEAD_OF_MOVE
    cid#1546374 COPY_INSTEAD_OF_MOVE
    cid#1546373 COPY_INSTEAD_OF_MOVE
    cid#1546368 COPY_INSTEAD_OF_MOVE
    cid#1546365 COPY_INSTEAD_OF_MOVE
    cid#1546356 COPY_INSTEAD_OF_MOVE
    cid#1546340 COPY_INSTEAD_OF_MOVE
    cid#1546266 COPY_INSTEAD_OF_MOVE
    cid#1546236 COPY_INSTEAD_OF_MOVE
    cid#1546188 COPY_INSTEAD_OF_MOVE
    cid#1546178 COPY_INSTEAD_OF_MOVE
    cid#1546166 COPY_INSTEAD_OF_MOVE
    cid#1546156 COPY_INSTEAD_OF_MOVE
    cid#1546144 COPY_INSTEAD_OF_MOVE
    cid#1546143 COPY_INSTEAD_OF_MOVE
    cid#1546100 COPY_INSTEAD_OF_MOVE
    cid#1546078 COPY_INSTEAD_OF_MOVE
    cid#1546041 COPY_INSTEAD_OF_MOVE
    cid#1546036 COPY_INSTEAD_OF_MOVE
    cid#1546033 COPY_INSTEAD_OF_MOVE
    
    Change-Id: Ib3586d93198992e206baf5c2de5a663d5574aa3c
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160979
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <[email protected]>

diff --git a/accessibility/source/extended/AccessibleGridControlTable.cxx 
b/accessibility/source/extended/AccessibleGridControlTable.cxx
index 11f0f0a1d584..9057a0360093 100644
--- a/accessibility/source/extended/AccessibleGridControlTable.cxx
+++ b/accessibility/source/extended/AccessibleGridControlTable.cxx
@@ -65,8 +65,7 @@ AccessibleGridControlTable::getAccessibleChild( sal_Int64 
nChildIndex )
     }
     if(!m_aCellVector[nChildIndex].is())
     {
-        rtl::Reference<AccessibleGridControlTableCell> pCell = new 
AccessibleGridControlTableCell(this, m_aTable, 
nChildIndex/m_aTable.GetColumnCount(), nChildIndex%m_aTable.GetColumnCount());
-        m_aCellVector[nChildIndex] = pCell;
+        m_aCellVector[nChildIndex].set(new 
AccessibleGridControlTableCell(this, m_aTable, 
nChildIndex/m_aTable.GetColumnCount(), nChildIndex%m_aTable.GetColumnCount()));
     }
     return m_aCellVector[nChildIndex];
 }
diff --git a/basic/source/classes/sb.cxx b/basic/source/classes/sb.cxx
index 8187e6126651..9b702e08d5a1 100644
--- a/basic/source/classes/sb.cxx
+++ b/basic/source/classes/sb.cxx
@@ -1586,9 +1586,8 @@ void StarBASIC::MakeErrorText( ErrCode nId, 
std::u16string_view aMsg )
     }
     else if( nOldID != 0 )
     {
-        OUString aStdMsg = "Error " + OUString::number(nOldID) +
-                           ": No error text available!";
-        GetSbData()->aErrMsg = aStdMsg;
+        GetSbData()->aErrMsg = "Error " + OUString::number(nOldID) +
+                               ": No error text available!";
     }
     else
     {
diff --git a/basic/source/classes/sbunoobj.cxx 
b/basic/source/classes/sbunoobj.cxx
index bf740aaafc0d..e2aaa1aa8f84 100644
--- a/basic/source/classes/sbunoobj.cxx
+++ b/basic/source/classes/sbunoobj.cxx
@@ -4113,9 +4113,8 @@ void RTL_Impl_CreateUnoValue( SbxArray& rPar )
         bool bSuccess = implGetTypeByName( aValTypeName, aType );
         if( bSuccess )
         {
-            Any aTypeAny( aType );
             SbxVariableRef refVar = rPar.Get(0);
-            SbxObjectRef xUnoAnyObject = new SbUnoAnyObject( aTypeAny );
+            SbxObjectRef xUnoAnyObject = new SbUnoAnyObject(Any(aType));
             refVar->PutObject( xUnoAnyObject.get() );
         }
         return;
diff --git a/dbaccess/source/core/api/RowSet.cxx 
b/dbaccess/source/core/api/RowSet.cxx
index 44709a2a5a33..eccaa6af525b 100644
--- a/dbaccess/source/core/api/RowSet.cxx
+++ b/dbaccess/source/core/api/RowSet.cxx
@@ -1650,8 +1650,7 @@ void ORowSet::impl_ensureStatement_throw()
 
         // append information about what we were actually going to execute
         OUString sInfo(m_sErrorString.replaceFirst("$command$", 
sCommandToExecute));
-        css::uno::Any aAppend = 
SQLExceptionInfo::createException(SQLExceptionInfo::TYPE::SQLContext, sInfo, 
OUString(), 0);
-        pLastExceptionInChain->NextException = aAppend;
+        pLastExceptionInChain->NextException = 
SQLExceptionInfo::createException(SQLExceptionInfo::TYPE::SQLContext, sInfo, 
OUString(), 0);
 
         // propagate
         throw;
diff --git a/dbaccess/source/ui/querydesign/QueryDesignView.cxx 
b/dbaccess/source/ui/querydesign/QueryDesignView.cxx
index abdc597eb615..35474da27b76 100644
--- a/dbaccess/source/ui/querydesign/QueryDesignView.cxx
+++ b/dbaccess/source/ui/querydesign/QueryDesignView.cxx
@@ -1136,8 +1136,7 @@ namespace
             if ( !aGroupByStr.isEmpty() )
             {
                 aGroupByStr = 
aGroupByStr.replaceAt(aGroupByStr.getLength()-1,1, u" " );
-                OUString aGroupByStr2 = " GROUP BY " + aGroupByStr;
-                aGroupByStr = aGroupByStr2;
+                aGroupByStr = " GROUP BY " + aGroupByStr;
             }
         }
         catch(SQLException&)
diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx
index e5aaa66ddb35..36321eb43ff9 100644
--- a/desktop/source/lib/init.cxx
+++ b/desktop/source/lib/init.cxx
@@ -3257,7 +3257,7 @@ public:
     virtual void SAL_CALL flush() override;
     virtual void SAL_CALL close() override;
     virtual OUString SAL_CALL getDescription() override;
-    void setBridge(Reference<XBridge>);
+    void setBridge(const Reference<XBridge>&);
     void* getContext();
     inline static int g_connectionCount = 0;
 
@@ -3316,7 +3316,7 @@ void FunctionBasedURPConnection::close()
 
 OUString FunctionBasedURPConnection::getDescription() { return ""; }
 
-void FunctionBasedURPConnection::setBridge(Reference<XBridge> xBridge) { 
m_URPBridge = xBridge; }
+void FunctionBasedURPConnection::setBridge(const Reference<XBridge>& xBridge) 
{ m_URPBridge = xBridge; }
 }
 
 static void*
diff --git a/extensions/source/logging/loggerconfig.cxx 
b/extensions/source/logging/loggerconfig.cxx
index 90801b484fee..daf42859b833 100644
--- a/extensions/source/logging/loggerconfig.cxx
+++ b/extensions/source/logging/loggerconfig.cxx
@@ -104,22 +104,19 @@ namespace logging
                 ::sal::static_int_cast< sal_Int16 >( aDateTime.NanoSeconds / 
10000000 ) );
             OUString sTime = OUString::createFromAscii( buffer );
 
-            OUString sDateTime = sDate + "." + sTime;
-
             oslProcessIdentifier aProcessId = 0;
             oslProcessInfo info;
             info.Size = sizeof (oslProcessInfo);
             if ( osl_getProcessInfo ( nullptr, osl_Process_IDENTIFIER, &info ) 
== osl_Process_E_None)
                 aProcessId = info.Ident;
-            OUString aPID = OUString::number( aProcessId );
 
             Variable const aVariables[] =
             {
                 {std::u16string_view(u"$(loggername)"), sLoggerName},
                 {std::u16string_view(u"$(date)"), sDate},
                 {std::u16string_view(u"$(time)"), sTime},
-                {std::u16string_view(u"$(datetime)"), sDateTime},
-                {std::u16string_view(u"$(pid)"), aPID}
+                {std::u16string_view(u"$(datetime)"), sDate + "." + sTime },
+                {std::u16string_view(u"$(pid)"), OUString::number(aProcessId)}
             };
 
             for (Variable const & aVariable : aVariables)
diff --git a/filter/source/xsltfilter/OleHandler.cxx 
b/filter/source/xsltfilter/OleHandler.cxx
index 2327290b5e97..14a21c38d75a 100644
--- a/filter/source/xsltfilter/OleHandler.cxx
+++ b/filter/source/xsltfilter/OleHandler.cxx
@@ -70,10 +70,9 @@ namespace XSLT
 
         //create a com.sun.star.embed.OLESimpleStorage from the temp stream
         Sequence<Any> args{ Any(xSeek) };
-        Reference<XNameContainer> cont(
+        m_storage.set(
              Reference<XMultiServiceFactory>(m_xContext->getServiceManager(), 
UNO_QUERY_THROW)
                  
->createInstanceWithArguments("com.sun.star.embed.OLESimpleStorage", args), 
UNO_QUERY);
-        m_storage = cont;
     }
 
     OString
diff --git a/filter/source/xsltfilter/XSLTFilter.cxx 
b/filter/source/xsltfilter/XSLTFilter.cxx
index b3e34925484a..914fc986b964 100644
--- a/filter/source/xsltfilter/XSLTFilter.cxx
+++ b/filter/source/xsltfilter/XSLTFilter.cxx
@@ -351,7 +351,6 @@ namespace XSLT
                         // create pipe
                         css::uno::Reference<XOutputStream> pipeout =
                                         Pipe::create(m_xContext);
-                        css::uno::Reference<XInputStream> pipein(pipeout, 
UNO_QUERY);
 
                         //connect transformer to pipe
                         m_tcontrol->setOutputStream(pipeout);
@@ -360,7 +359,7 @@ namespace XSLT
                         InputSource aInput;
                         aInput.sSystemId = aURL;
                         aInput.sPublicId = aURL;
-                        aInput.aInputStream = pipein;
+                        aInput.aInputStream.set(pipeout, UNO_QUERY);
 
                         css::uno::Reference< css::xml::sax::XFastParser > 
xFastParser(
                             xHandler, css::uno::UNO_QUERY );
diff --git a/framework/source/uielement/generictoolbarcontroller.cxx 
b/framework/source/uielement/generictoolbarcontroller.cxx
index 827991f7226d..3c5923396cfc 100644
--- a/framework/source/uielement/generictoolbarcontroller.cxx
+++ b/framework/source/uielement/generictoolbarcontroller.cxx
@@ -155,9 +155,6 @@ void SAL_CALL GenericToolbarController::execute( sal_Int16 
KeyModifier )
 
     css::util::URL aTargetURL;
 
-    // Add key modifier to argument list
-    Sequence<PropertyValue> aArgs{ 
comphelper::makePropertyValue("KeyModifier", KeyModifier) };
-
     // handle also command aliases
     auto aProperties = 
vcl::CommandInfoProvider::GetCommandProperties(m_aCommandURL,
         vcl::CommandInfoProvider::GetModuleIdentifier(m_xFrame));
@@ -171,7 +168,9 @@ void SAL_CALL GenericToolbarController::execute( sal_Int16 
KeyModifier )
     ExecuteInfo* pExecuteInfo = new ExecuteInfo;
     pExecuteInfo->xDispatch     = xDispatch;
     pExecuteInfo->aTargetURL    = aTargetURL;
-    pExecuteInfo->aArgs         = aArgs;
+    // Add key modifier to argument list
+    pExecuteInfo->aArgs = { comphelper::makePropertyValue("KeyModifier", 
KeyModifier) };
+
     Application::PostUserEvent( LINK(nullptr, GenericToolbarController , 
ExecuteHdl_Impl), pExecuteInfo );
 }
 
diff --git a/include/vcl/weld.hxx b/include/vcl/weld.hxx
index 2d8c4db085d6..c30f941c53e7 100644
--- a/include/vcl/weld.hxx
+++ b/include/vcl/weld.hxx
@@ -603,7 +603,7 @@ class VCL_DLLPUBLIC Dialog : virtual public Window
 {
 private:
     friend DialogController;
-    virtual bool runAsync(std::shared_ptr<DialogController>,
+    virtual bool runAsync(std::shared_ptr<DialogController> const& rxOwner,
                           const std::function<void(sal_Int32)>& func)
         = 0;
 
diff --git a/sc/source/ui/unoobj/dapiuno.cxx b/sc/source/ui/unoobj/dapiuno.cxx
index f172716c1130..d496c6c99134 100644
--- a/sc/source/ui/unoobj/dapiuno.cxx
+++ b/sc/source/ui/unoobj/dapiuno.cxx
@@ -2484,8 +2484,7 @@ Reference< XDataPilotField > SAL_CALL 
ScDataPilotFieldObj::createNameGroup( cons
         }
         OUString aGroupDimName = pGroupDimension->GetGroupDimName();
 
-        OUString aGroupName = pGroupDimension->CreateGroupName( 
ScResId(STR_PIVOT_GROUP) );
-        ScDPSaveGroupItem aGroup( aGroupName );
+        ScDPSaveGroupItem 
aGroup(pGroupDimension->CreateGroupName(ScResId(STR_PIVOT_GROUP)));
         for (const OUString& aEntryName : rItems)
         {
             if ( pBaseGroupDim )
diff --git a/sd/source/ui/slideshow/slideshow.cxx 
b/sd/source/ui/slideshow/slideshow.cxx
index 1c21ef7ee08a..6a3dffd2780a 100644
--- a/sd/source/ui/slideshow/slideshow.cxx
+++ b/sd/source/ui/slideshow/slideshow.cxx
@@ -222,12 +222,10 @@ void SlideShow::CreateController(  ViewShell* pViewSh, 
::sd::View* pView, vcl::W
 
     Reference< XPresentation2 > xThis( this );
 
-    rtl::Reference<SlideshowImpl> xController (
-        new SlideshowImpl(xThis, pViewSh, pView, mpDoc, pParentWindow));
-
     // Reset mbIsInStartup.  From here mxController.is() is used to prevent
     // multiple slide show instances for one document.
-    mxController = xController;
+    mxController.set(new SlideshowImpl(xThis, pViewSh, pView, mpDoc, 
pParentWindow));
+
     mbIsInStartup = false;
 
 }
diff --git a/svx/source/sdr/primitive2d/sdrtextprimitive2d.cxx 
b/svx/source/sdr/primitive2d/sdrtextprimitive2d.cxx
index 8e67f32b1e6b..312bd8ab71b0 100644
--- a/svx/source/sdr/primitive2d/sdrtextprimitive2d.cxx
+++ b/svx/source/sdr/primitive2d/sdrtextprimitive2d.cxx
@@ -91,7 +91,7 @@ namespace drawinglayer::primitive2d
         // ATM there is only one text block per SdrObject, this may get more 
in the future
         void 
SdrTextPrimitive2D::encapsulateWithTextHierarchyBlockPrimitive2D(Primitive2DContainer&
 rContainer, Primitive2DContainer&& aCandidate)
         {
-            rContainer.push_back(new 
TextHierarchyBlockPrimitive2D(drawinglayer::primitive2d::Primitive2DContainer(aCandidate)));
+            rContainer.push_back(new 
TextHierarchyBlockPrimitive2D(drawinglayer::primitive2d::Primitive2DContainer(std::move(aCandidate))));
         }
 
         SdrTextPrimitive2D::SdrTextPrimitive2D(
diff --git a/svx/source/smarttags/SmartTagMgr.cxx 
b/svx/source/smarttags/SmartTagMgr.cxx
index 37b9bc935222..fd4f0e2f727e 100644
--- a/svx/source/smarttags/SmartTagMgr.cxx
+++ b/svx/source/smarttags/SmartTagMgr.cxx
@@ -515,8 +515,7 @@ void SmartTagMgr::AssociateActionsWithRecognizers()
             {
                 // insert 'empty' action reference if there is no action 
associated with
                 // the current smart tag type:
-                Reference< smarttags::XSmartTagAction > xActionLib;
-                ActionReference aActionRef( xActionLib, 0 );
+                ActionReference 
aActionRef(Reference<smarttags::XSmartTagAction>(), 0);
 
                 // add recognizer/action pair to map
                 maSmartTagMap.insert( SmartTagMapElement( aSmartTagName, 
aActionRef ));
diff --git a/sw/source/core/txtnode/attrcontentcontrol.cxx 
b/sw/source/core/txtnode/attrcontentcontrol.cxx
index c894615fa41d..0bd7669f5d9e 100644
--- a/sw/source/core/txtnode/attrcontentcontrol.cxx
+++ b/sw/source/core/txtnode/attrcontentcontrol.cxx
@@ -661,11 +661,10 @@ void SwContentControlListItem::ItemsToAny(const 
std::vector<SwContentControlList
     for (size_t i = 0; i < rItems.size(); ++i)
     {
         const SwContentControlListItem& rItem = rItems[i];
-        uno::Sequence<beans::PropertyValue> aItem = {
+        pRet[i] = {
             comphelper::makePropertyValue("DisplayText", rItem.m_aDisplayText),
             comphelper::makePropertyValue("Value", rItem.m_aValue),
         };
-        pRet[i] = aItem;
     }
 
     rVal <<= aRet;
diff --git a/sw/source/filter/ww8/attributeoutputbase.hxx 
b/sw/source/filter/ww8/attributeoutputbase.hxx
index bad43d37843a..4ce7f495cc3b 100644
--- a/sw/source/filter/ww8/attributeoutputbase.hxx
+++ b/sw/source/filter/ww8/attributeoutputbase.hxx
@@ -234,33 +234,33 @@ public:
     /// Output style.
     virtual void ParagraphStyle( sal_uInt16 nStyle ) = 0;
 
-    virtual void TableInfoCell( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfo ) = 0;
+    virtual void TableInfoCell( const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfo ) = 0;
 
-    virtual void TableInfoRow( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfo ) = 0;
+    virtual void TableInfoRow( const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfo ) = 0;
 
-    virtual void TableDefinition( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfo ) = 0;
+    virtual void TableDefinition( const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfo ) = 0;
 
-    virtual void TableDefaultBorders( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfo ) = 0;
+    virtual void TableDefaultBorders( const 
ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfo ) = 0;
 
-    virtual void TableBackgrounds( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfo ) = 0;
+    virtual void TableBackgrounds( const 
ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfo ) = 0;
 
-    virtual void TableRowRedline( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfo ) = 0;
+    virtual void TableRowRedline( const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfo ) = 0;
 
-    virtual void TableCellRedline( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfo ) = 0;
+    virtual void TableCellRedline( const 
ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfo ) = 0;
 
-    virtual void TableHeight( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfo ) = 0;
+    virtual void TableHeight( const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfo ) = 0;
 
-    virtual void TableCanSplit( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfo ) = 0;
+    virtual void TableCanSplit( const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfo ) = 0;
 
-    virtual void TableBidi( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfo ) = 0;
+    virtual void TableBidi( const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfo ) = 0;
 
-    virtual void TableVerticalCell( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfo ) = 0;
+    virtual void TableVerticalCell( const 
ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfo ) = 0;
 
-    virtual void TableNodeInfoInner( ww8::WW8TableNodeInfoInner::Pointer_t 
pNodeInfoInner ) = 0;
+    virtual void TableNodeInfoInner( const 
ww8::WW8TableNodeInfoInner::Pointer_t& pNodeInfoInner ) = 0;
 
-    virtual void TableOrientation( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner ) = 0;
+    virtual void TableOrientation( const 
ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner ) = 0;
 
-    virtual void TableSpacing( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner ) = 0;
+    virtual void TableSpacing( const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfoInner ) = 0;
 
     virtual void TableRowEnd( sal_uInt32 nDepth ) = 0;
 
diff --git a/sw/source/filter/ww8/docxattributeoutput.hxx 
b/sw/source/filter/ww8/docxattributeoutput.hxx
index 28eb32caf884..d6a024cc3c61 100644
--- a/sw/source/filter/ww8/docxattributeoutput.hxx
+++ b/sw/source/filter/ww8/docxattributeoutput.hxx
@@ -286,21 +286,21 @@ public:
     /// Output style.
     virtual void ParagraphStyle( sal_uInt16 nStyle ) override;
 
-    virtual void TableInfoCell( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner ) override;
-    virtual void TableInfoRow( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner ) override;
-    virtual void TableDefinition( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner ) override;
-    virtual void TableDefaultBorders( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner ) override;
-    void TableDefaultCellMargins( ww8::WW8TableNodeInfoInner::Pointer_t const 
& pTableTextNodeInfoInner );
-    virtual void TableBackgrounds( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner ) override;
-    virtual void TableRowRedline( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner ) override;
-    virtual void TableCellRedline( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner ) override;
-    virtual void TableHeight( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner ) override;
-    virtual void TableCanSplit( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner ) override;
-    virtual void TableBidi( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner ) override;
-    virtual void TableVerticalCell( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner ) override;
-    virtual void TableNodeInfoInner( ww8::WW8TableNodeInfoInner::Pointer_t 
pNodeInfoInner ) override;
-    virtual void TableOrientation( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner ) override;
-    virtual void TableSpacing( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner ) override;
+    virtual void TableInfoCell( const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfoInner ) override;
+    virtual void TableInfoRow( const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfoInner ) override;
+    virtual void TableDefinition( const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfoInner ) override;
+    virtual void TableDefaultBorders( const 
ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner ) override;
+    void TableDefaultCellMargins( const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfoInner );
+    virtual void TableBackgrounds( const 
ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner ) override;
+    virtual void TableRowRedline( const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfoInner ) override;
+    virtual void TableCellRedline( const 
ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner ) override;
+    virtual void TableHeight( const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfoInner ) override;
+    virtual void TableCanSplit( const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfoInner ) override;
+    virtual void TableBidi( const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfoInner ) override;
+    virtual void TableVerticalCell( const 
ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner ) override;
+    virtual void TableNodeInfoInner( const 
ww8::WW8TableNodeInfoInner::Pointer_t& pNodeInfoInner ) override;
+    virtual void TableOrientation( const 
ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner ) override;
+    virtual void TableSpacing( const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfoInner ) override;
     virtual void TableRowEnd( sal_uInt32 nDepth ) override;
 
     /// Start of the styles table.
diff --git a/sw/source/filter/ww8/docxtableexport.cxx 
b/sw/source/filter/ww8/docxtableexport.cxx
index 5972903ec599..f6bbef34dddc 100644
--- a/sw/source/filter/ww8/docxtableexport.cxx
+++ b/sw/source/filter/ww8/docxtableexport.cxx
@@ -163,16 +163,17 @@ void CollectFloatingTableAttributes(DocxExport& rExport, 
const ww8::Frame& rFram
 }
 
 void DocxAttributeOutput::TableInfoCell(
-    ww8::WW8TableNodeInfoInner::Pointer_t /*pTableTextNodeInfoInner*/)
+    const ww8::WW8TableNodeInfoInner::Pointer_t& /*pTableTextNodeInfoInner*/)
 {
 }
 
-void DocxAttributeOutput::TableInfoRow(ww8::WW8TableNodeInfoInner::Pointer_t 
/*pTableTextNodeInfo*/)
+void DocxAttributeOutput::TableInfoRow(
+    const ww8::WW8TableNodeInfoInner::Pointer_t& /*pTableTextNodeInfo*/)
 {
 }
 
 void DocxAttributeOutput::TableDefinition(
-    ww8::WW8TableNodeInfoInner::Pointer_t pTableTextNodeInfoInner)
+    const ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner)
 {
     bool const bEcma = GetExport().GetFilter().getVersion() == 
oox::core::ECMA_376_1ST_EDITION;
 
@@ -529,14 +530,14 @@ void DocxAttributeOutput::TableDefinition(
 }
 
 void DocxAttributeOutput::TableDefaultBorders(
-    ww8::WW8TableNodeInfoInner::Pointer_t /*pTableTextNodeInfoInner*/)
+    const ww8::WW8TableNodeInfoInner::Pointer_t& /*pTableTextNodeInfoInner*/)
 {
     // Table defaults should only be created IF m_aTableStyleConf contents 
haven't come from a table style.
     // Previously this function wrote out Cell A1 as the table default, 
causing problems with no benefit.
 }
 
 void DocxAttributeOutput::TableDefaultCellMargins(
-    ww8::WW8TableNodeInfoInner::Pointer_t const& pTableTextNodeInfoInner)
+    const ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner)
 {
     const SwTableBox* pTabBox = pTableTextNodeInfoInner->getTableBox();
     const SwFrameFormat* pFrameFormat = pTabBox->GetFrameFormat();
@@ -547,7 +548,7 @@ void DocxAttributeOutput::TableDefaultCellMargins(
 }
 
 void DocxAttributeOutput::TableBackgrounds(
-    ww8::WW8TableNodeInfoInner::Pointer_t pTableTextNodeInfoInner)
+    const ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner)
 {
     const SwTable* pTable = pTableTextNodeInfoInner->getTable();
     const SwTableBox* pTableBox = pTableTextNodeInfoInner->getTableBox();
@@ -622,7 +623,7 @@ void DocxAttributeOutput::TableBackgrounds(
 }
 
 void DocxAttributeOutput::TableRowRedline(
-    ww8::WW8TableNodeInfoInner::Pointer_t pTableTextNodeInfoInner)
+    const ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner)
 {
     const SwTableBox* pTabBox = pTableTextNodeInfoInner->getTableBox();
     const SwTableLine* pTabLine = pTabBox->GetUpper();
@@ -699,7 +700,7 @@ void DocxAttributeOutput::TableRowRedline(
 }
 
 void DocxAttributeOutput::TableCellRedline(
-    ww8::WW8TableNodeInfoInner::Pointer_t pTableTextNodeInfoInner)
+    const ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner)
 {
     const SwTableBox* pTabBox = pTableTextNodeInfoInner->getTableBox();
 
@@ -768,7 +769,8 @@ void DocxAttributeOutput::TableCellRedline(
     }
 }
 
-void DocxAttributeOutput::TableHeight(ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner)
+void DocxAttributeOutput::TableHeight(
+    const ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner)
 {
     const SwTableBox* pTabBox = pTableTextNodeInfoInner->getTableBox();
     const SwTableLine* pTabLine = pTabBox->GetUpper();
@@ -799,7 +801,7 @@ void 
DocxAttributeOutput::TableHeight(ww8::WW8TableNodeInfoInner::Pointer_t pTab
 }
 
 void DocxAttributeOutput::TableCanSplit(
-    ww8::WW8TableNodeInfoInner::Pointer_t pTableTextNodeInfoInner)
+    const ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner)
 {
     const SwTableBox* pTabBox = pTableTextNodeInfoInner->getTableBox();
     const SwTableLine* pTabLine = pTabBox->GetUpper();
@@ -812,7 +814,8 @@ void DocxAttributeOutput::TableCanSplit(
         m_pSerializer->singleElementNS(XML_w, XML_cantSplit, FSNS(XML_w, 
XML_val), "true");
 }
 
-void DocxAttributeOutput::TableBidi(ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner)
+void DocxAttributeOutput::TableBidi(
+    const ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner)
 {
     const SwTable* pTable = pTableTextNodeInfoInner->getTable();
     const SwFrameFormat* pFrameFormat = pTable->GetFrameFormat();
@@ -824,7 +827,7 @@ void 
DocxAttributeOutput::TableBidi(ww8::WW8TableNodeInfoInner::Pointer_t pTable
 }
 
 void DocxAttributeOutput::TableVerticalCell(
-    ww8::WW8TableNodeInfoInner::Pointer_t pTableTextNodeInfoInner)
+    const ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner)
 {
     const SwTableBox* pTabBox = pTableTextNodeInfoInner->getTableBox();
     const SwFrameFormat* pFrameFormat = pTabBox->GetFrameFormat();
@@ -863,7 +866,8 @@ void DocxAttributeOutput::TableVerticalCell(
     }
 }
 
-void 
DocxAttributeOutput::TableNodeInfoInner(ww8::WW8TableNodeInfoInner::Pointer_t 
pNodeInfoInner)
+void DocxAttributeOutput::TableNodeInfoInner(
+    const ww8::WW8TableNodeInfoInner::Pointer_t& pNodeInfoInner)
 {
     // This is called when the nested table ends in a cell, and there's no
     // paragraph behind that; so we must check for the ends of cell, rows,
@@ -873,14 +877,14 @@ void 
DocxAttributeOutput::TableNodeInfoInner(ww8::WW8TableNodeInfoInner::Pointer
 }
 
 void DocxAttributeOutput::TableOrientation(
-    ww8::WW8TableNodeInfoInner::Pointer_t /*pTableTextNodeInfoInner*/)
+    const ww8::WW8TableNodeInfoInner::Pointer_t& /*pTableTextNodeInfoInner*/)
 {
     SAL_INFO("sw.ww8", "TODO: DocxAttributeOutput::TableOrientation( "
                        "ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner )");
 }
 
 void DocxAttributeOutput::TableSpacing(
-    ww8::WW8TableNodeInfoInner::Pointer_t /*pTableTextNodeInfoInner*/)
+    const ww8::WW8TableNodeInfoInner::Pointer_t& /*pTableTextNodeInfoInner*/)
 {
     SAL_INFO("sw.ww8", "TODO: DocxAttributeOutput::TableSpacing( "
                        "ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner )");
diff --git a/sw/source/filter/ww8/rtfattributeoutput.cxx 
b/sw/source/filter/ww8/rtfattributeoutput.cxx
index 2d68556e8a23..ef33b2c2d53c 100644
--- a/sw/source/filter/ww8/rtfattributeoutput.cxx
+++ b/sw/source/filter/ww8/rtfattributeoutput.cxx
@@ -662,7 +662,7 @@ void RtfAttributeOutput::ParagraphStyle(sal_uInt16 nStyle)
 }
 
 void RtfAttributeOutput::TableInfoCell(
-    ww8::WW8TableNodeInfoInner::Pointer_t /*pTableTextNodeInfoInner*/)
+    const ww8::WW8TableNodeInfoInner::Pointer_t& /*pTableTextNodeInfoInner*/)
 {
     m_aStyles.append(OOO_STRING_SVTOOLS_RTF_INTBL);
     if (m_nTableDepth > 1)
@@ -673,7 +673,8 @@ void RtfAttributeOutput::TableInfoCell(
     m_bWroteCellInfo = true;
 }
 
-void RtfAttributeOutput::TableInfoRow(ww8::WW8TableNodeInfoInner::Pointer_t 
/*pTableTextNodeInfo*/)
+void RtfAttributeOutput::TableInfoRow(
+    const ww8::WW8TableNodeInfoInner::Pointer_t& /*pTableTextNodeInfo*/)
 {
     /* noop */
 }
@@ -788,7 +789,7 @@ void RtfAttributeOutput::TablePositioning(SwFrameFormat* 
pFlyFormat)
 }
 
 void RtfAttributeOutput::TableDefinition(
-    ww8::WW8TableNodeInfoInner::Pointer_t pTableTextNodeInfoInner)
+    const ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner)
 {
     InitTableHelper(pTableTextNodeInfoInner);
 
@@ -858,7 +859,7 @@ void RtfAttributeOutput::TableDefinition(
 }
 
 void RtfAttributeOutput::TableDefaultBorders(
-    ww8::WW8TableNodeInfoInner::Pointer_t pTableTextNodeInfoInner)
+    const ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner)
 {
     /*
      * The function name is a bit misleading: given that we write borders
@@ -905,7 +906,7 @@ void RtfAttributeOutput::TableDefaultBorders(
 }
 
 void RtfAttributeOutput::TableBackgrounds(
-    ww8::WW8TableNodeInfoInner::Pointer_t pTableTextNodeInfoInner)
+    const ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner)
 {
     const SwTable* pTable = pTableTextNodeInfoInner->getTable();
     const SwTableBox* pTableBox = pTableTextNodeInfoInner->getTableBox();
@@ -941,16 +942,17 @@ void RtfAttributeOutput::TableBackgrounds(
 }
 
 void RtfAttributeOutput::TableRowRedline(
-    ww8::WW8TableNodeInfoInner::Pointer_t /*pTableTextNodeInfoInner*/)
+    const ww8::WW8TableNodeInfoInner::Pointer_t& /*pTableTextNodeInfoInner*/)
 {
 }
 
 void RtfAttributeOutput::TableCellRedline(
-    ww8::WW8TableNodeInfoInner::Pointer_t /*pTableTextNodeInfoInner*/)
+    const ww8::WW8TableNodeInfoInner::Pointer_t& /*pTableTextNodeInfoInner*/)
 {
 }
 
-void RtfAttributeOutput::TableHeight(ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner)
+void RtfAttributeOutput::TableHeight(
+    const ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner)
 {
     const SwTableBox* pTabBox = pTableTextNodeInfoInner->getTableBox();
     const SwTableLine* pTabLine = pTabBox->GetUpper();
@@ -982,7 +984,7 @@ void 
RtfAttributeOutput::TableHeight(ww8::WW8TableNodeInfoInner::Pointer_t pTabl
 }
 
 void RtfAttributeOutput::TableCanSplit(
-    ww8::WW8TableNodeInfoInner::Pointer_t pTableTextNodeInfoInner)
+    const ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner)
 {
     const SwTableBox* pTabBox = pTableTextNodeInfoInner->getTableBox();
     const SwTableLine* pTabLine = pTabBox->GetUpper();
@@ -994,7 +996,8 @@ void RtfAttributeOutput::TableCanSplit(
         m_aRowDefs.append(OOO_STRING_SVTOOLS_RTF_TRKEEP);
 }
 
-void RtfAttributeOutput::TableBidi(ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner)
+void RtfAttributeOutput::TableBidi(
+    const ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner)
 {
     const SwTable* pTable = pTableTextNodeInfoInner->getTable();
     const SwFrameFormat* pFrameFormat = pTable->GetFrameFormat();
@@ -1006,7 +1009,7 @@ void 
RtfAttributeOutput::TableBidi(ww8::WW8TableNodeInfoInner::Pointer_t pTableT
 }
 
 void RtfAttributeOutput::TableVerticalCell(
-    ww8::WW8TableNodeInfoInner::Pointer_t pTableTextNodeInfoInner)
+    const ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner)
 {
     const SwWriteTableRows& aRows = m_pTableWrt->GetRows();
     SwWriteTableRow* pRow = aRows[pTableTextNodeInfoInner->getRow()].get();
@@ -1046,7 +1049,8 @@ void RtfAttributeOutput::TableVerticalCell(
     }
 }
 
-void 
RtfAttributeOutput::TableNodeInfoInner(ww8::WW8TableNodeInfoInner::Pointer_t 
pNodeInfoInner)
+void RtfAttributeOutput::TableNodeInfoInner(
+    const ww8::WW8TableNodeInfoInner::Pointer_t& pNodeInfoInner)
 {
     // This is called when the nested table ends in a cell, and there's no
     // paragraph behind that; so we must check for the ends of cell, rows,
@@ -1055,7 +1059,7 @@ void 
RtfAttributeOutput::TableNodeInfoInner(ww8::WW8TableNodeInfoInner::Pointer_
 }
 
 void RtfAttributeOutput::TableOrientation(
-    ww8::WW8TableNodeInfoInner::Pointer_t pTableTextNodeInfoInner)
+    const ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner)
 {
     const SwTable* pTable = pTableTextNodeInfoInner->getTable();
     SwFrameFormat* pFormat = pTable->GetFrameFormat();
@@ -1084,7 +1088,7 @@ void RtfAttributeOutput::TableOrientation(
 }
 
 void RtfAttributeOutput::TableSpacing(
-    ww8::WW8TableNodeInfoInner::Pointer_t /*pTableTextNodeInfoInner*/)
+    const ww8::WW8TableNodeInfoInner::Pointer_t& /*pTableTextNodeInfoInner*/)
 {
     SAL_INFO("sw.rtf", "TODO: " << __func__);
 }
diff --git a/sw/source/filter/ww8/rtfattributeoutput.hxx 
b/sw/source/filter/ww8/rtfattributeoutput.hxx
index 5e7e648f647e..50ca3c0899b2 100644
--- a/sw/source/filter/ww8/rtfattributeoutput.hxx
+++ b/sw/source/filter/ww8/rtfattributeoutput.hxx
@@ -122,22 +122,32 @@ public:
     /// Output style.
     void ParagraphStyle(sal_uInt16 nStyle) override;
 
-    void TableInfoCell(ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner) override;
-    void TableInfoRow(ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner) override;
-    void TableDefinition(ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner) override;
+    void
+    TableInfoCell(const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfoInner) override;
+    void
+    TableInfoRow(const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfoInner) override;
+    void
+    TableDefinition(const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfoInner) override;
     void TablePositioning(SwFrameFormat* pFlyFormat);
+    void TableDefaultBorders(
+        const ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner) 
override;
+    void
+    TableBackgrounds(const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfoInner) override;
+    void
+    TableRowRedline(const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfoInner) override;
+    void
+    TableCellRedline(const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfoInner) override;
+    void TableHeight(const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfoInner) override;
+    void
+    TableCanSplit(const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfoInner) override;
+    void TableBidi(const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfoInner) override;
+    void TableVerticalCell(
+        const ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner) 
override;
+    void TableNodeInfoInner(const ww8::WW8TableNodeInfoInner::Pointer_t& 
pNodeInfoInner) override;
+    void
+    TableOrientation(const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfoInner) override;
     void
-    TableDefaultBorders(ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner) override;
-    void TableBackgrounds(ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner) override;
-    void TableRowRedline(ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner) override;
-    void TableCellRedline(ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner) override;
-    void TableHeight(ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner) override;
-    void TableCanSplit(ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner) override;
-    void TableBidi(ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner) override;
-    void TableVerticalCell(ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner) override;
-    void TableNodeInfoInner(ww8::WW8TableNodeInfoInner::Pointer_t 
pNodeInfoInner) override;
-    void TableOrientation(ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner) override;
-    void TableSpacing(ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner) override;
+    TableSpacing(const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfoInner) override;
     void TableRowEnd(sal_uInt32 nDepth) override;
 
     /// Start of the styles table.
diff --git a/sw/source/filter/ww8/wrtww8.cxx b/sw/source/filter/ww8/wrtww8.cxx
index 38fbfb21666a..e99f31342ba2 100644
--- a/sw/source/filter/ww8/wrtww8.cxx
+++ b/sw/source/filter/ww8/wrtww8.cxx
@@ -1984,7 +1984,7 @@ void WW8Export::RestoreData()
     MSWordExportBase::RestoreData();
 }
 
-void WW8AttributeOutput::TableInfoCell( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner )
+void WW8AttributeOutput::TableInfoCell(const 
ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner)
 {
     sal_uInt32 nDepth = pTableTextNodeInfoInner->getDepth();
 
@@ -2004,7 +2004,7 @@ void WW8AttributeOutput::TableInfoCell( 
ww8::WW8TableNodeInfoInner::Pointer_t pT
     }
 }
 
-void WW8AttributeOutput::TableInfoRow( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner )
+void WW8AttributeOutput::TableInfoRow(const 
ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner)
 {
     sal_uInt32 nDepth = pTableTextNodeInfoInner->getDepth();
 
@@ -2102,7 +2102,7 @@ static sal_uInt16 lcl_TCFlags(SwDoc &rDoc, const 
SwTableBox * pBox, sal_Int32 nR
     return nFlags;
 }
 
-void WW8AttributeOutput::TableVerticalCell( 
ww8::WW8TableNodeInfoInner::Pointer_t pTableTextNodeInfoInner )
+void WW8AttributeOutput::TableVerticalCell(const 
ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner)
 {
     const SwTableBox * pTabBox = pTableTextNodeInfoInner->getTableBox();
     const SwTableLine * pTabLine = pTabBox->GetUpper();
@@ -2138,7 +2138,7 @@ void WW8AttributeOutput::TableVerticalCell( 
ww8::WW8TableNodeInfoInner::Pointer_
     }
 }
 
-void WW8AttributeOutput::TableCanSplit( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner )
+void WW8AttributeOutput::TableCanSplit(const 
ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner )
 {
     const SwTableBox * pTabBox = pTableTextNodeInfoInner->getTableBox();
     const SwTableLine * pTabLine = pTabBox->GetUpper();
@@ -2158,7 +2158,7 @@ void WW8AttributeOutput::TableCanSplit( 
ww8::WW8TableNodeInfoInner::Pointer_t pT
     m_rWW8Export.m_pO->push_back( nCantSplit );
 }
 
-void WW8AttributeOutput::TableBidi( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner )
+void WW8AttributeOutput::TableBidi(const 
ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner)
 {
     const SwTable * pTable = pTableTextNodeInfoInner->getTable();
     const SwFrameFormat * pFrameFormat = pTable->GetFrameFormat();
@@ -2170,15 +2170,15 @@ void WW8AttributeOutput::TableBidi( 
ww8::WW8TableNodeInfoInner::Pointer_t pTable
     }
 }
 
-void WW8AttributeOutput::TableRowRedline( 
ww8::WW8TableNodeInfoInner::Pointer_t /*pTableTextNodeInfoInner*/ )
+void WW8AttributeOutput::TableRowRedline(const 
ww8::WW8TableNodeInfoInner::Pointer_t& /*pTableTextNodeInfoInner*/)
 {
 }
 
-void WW8AttributeOutput::TableCellRedline( 
ww8::WW8TableNodeInfoInner::Pointer_t /*pTableTextNodeInfoInner*/ )
+void WW8AttributeOutput::TableCellRedline(const 
ww8::WW8TableNodeInfoInner::Pointer_t& /*pTableTextNodeInfoInner*/)
 {
 }
 
-void WW8AttributeOutput::TableHeight( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner )
+void WW8AttributeOutput::TableHeight(const 
ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner)
 {
     const SwTableBox * pTabBox = pTableTextNodeInfoInner->getTableBox();
     const SwTableLine * pTabLine = pTabBox->GetUpper();
@@ -2203,7 +2203,7 @@ void WW8AttributeOutput::TableHeight( 
ww8::WW8TableNodeInfoInner::Pointer_t pTab
 
 }
 
-void WW8AttributeOutput::TableOrientation( 
ww8::WW8TableNodeInfoInner::Pointer_t pTableTextNodeInfoInner )
+void WW8AttributeOutput::TableOrientation(const 
ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner)
 {
     const SwTable * pTable = pTableTextNodeInfoInner->getTable();
 
@@ -2265,7 +2265,7 @@ void WW8AttributeOutput::TableOrientation( 
ww8::WW8TableNodeInfoInner::Pointer_t
     }
 }
 
-void WW8AttributeOutput::TableSpacing(ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner)
+void WW8AttributeOutput::TableSpacing(const 
ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner)
 {
     const SwTable * pTable = pTableTextNodeInfoInner->getTable();
     const SwTableFormat* pTableFormat = pTable->GetFrameFormat();
@@ -2418,7 +2418,7 @@ void WW8AttributeOutput::TablePositioning(SwFrameFormat* 
pFlyFormat)
     }
 }
 
-void WW8AttributeOutput::TableDefinition( 
ww8::WW8TableNodeInfoInner::Pointer_t pTableTextNodeInfoInner )
+void WW8AttributeOutput::TableDefinition(const 
ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner)
 {
     const SwTable * pTable = pTableTextNodeInfoInner->getTable();
 
@@ -2640,7 +2640,7 @@ void AttributeOutputBase::GetTablePageSize( 
ww8::WW8TableNodeInfoInner const * p
     rRelBoxSize = bRelBoxSize;
 }
 
-void WW8AttributeOutput::TableDefaultBorders( 
ww8::WW8TableNodeInfoInner::Pointer_t pTableTextNodeInfoInner )
+void WW8AttributeOutput::TableDefaultBorders( const 
ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner )
 {
     // This function name is misleading because it is not a table default, but 
a row default,
     // and it also only sets default cell margins (aka border padding).
@@ -2754,7 +2754,7 @@ void WW8AttributeOutput::TableCellBorders(
     }
 }
 
-void WW8AttributeOutput::TableBackgrounds( 
ww8::WW8TableNodeInfoInner::Pointer_t pTableTextNodeInfoInner )
+void WW8AttributeOutput::TableBackgrounds(const 
ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner)
 {
     const SwTable * pTab = pTableTextNodeInfoInner->getTable();
     const SwTableBox * pTabBox = pTableTextNodeInfoInner->getTableBox();
@@ -4412,7 +4412,7 @@ void WW8Export::WriteHyperlinkData( const 
sw::mark::IFieldmark& /*rFieldmark*/ )
     //@TODO implement me !!!
 }
 
-void WW8AttributeOutput::TableNodeInfoInner( 
ww8::WW8TableNodeInfoInner::Pointer_t pNodeInfoInner )
+void WW8AttributeOutput::TableNodeInfoInner(const 
ww8::WW8TableNodeInfoInner::Pointer_t& pNodeInfoInner)
 {
     SVBT16 nStyle;
     ShortToSVBT16( m_rWW8Export.m_nStyleBeforeFly, nStyle );
diff --git a/sw/source/filter/ww8/ww8attributeoutput.hxx 
b/sw/source/filter/ww8/ww8attributeoutput.hxx
index eb20f529c52a..7a0d13a2bc62 100644
--- a/sw/source/filter/ww8/ww8attributeoutput.hxx
+++ b/sw/source/filter/ww8/ww8attributeoutput.hxx
@@ -99,21 +99,21 @@ public:
     /// Output style.
     virtual void ParagraphStyle( sal_uInt16 nStyle ) override;
 
-    virtual void TableInfoCell( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfo ) override;
-    virtual void TableInfoRow( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfo ) override;
-    virtual void TableDefinition( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfo ) override;
+    virtual void TableInfoCell( const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfo ) override;
+    virtual void TableInfoRow( const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfo ) override;
+    virtual void TableDefinition( const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfo ) override;
     void TablePositioning(SwFrameFormat* pFlyFormat);
-    virtual void TableDefaultBorders( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfo ) override;
-    virtual void TableBackgrounds( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfo ) override;
-    virtual void TableRowRedline( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfo ) override;
-    virtual void TableCellRedline( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfo ) override;
-    virtual void TableHeight( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfo ) override;
-    virtual void TableCanSplit( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfo ) override;
-    virtual void TableBidi( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfo ) override;
-    virtual void TableVerticalCell( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfo ) override;
-    virtual void TableNodeInfoInner( ww8::WW8TableNodeInfoInner::Pointer_t 
pNodeInfoInner ) override;
-    virtual void TableOrientation( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner ) override;
-    virtual void TableSpacing( ww8::WW8TableNodeInfoInner::Pointer_t 
pTableTextNodeInfoInner ) override;
+    virtual void TableDefaultBorders( const 
ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfo ) override;
+    virtual void TableBackgrounds( const 
ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfo ) override;
+    virtual void TableRowRedline( const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfo ) override;
+    virtual void TableCellRedline( const 
ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfo ) override;
+    virtual void TableHeight( const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfo ) override;
+    virtual void TableCanSplit( const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfo ) override;
+    virtual void TableBidi( const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfo ) override;
+    virtual void TableVerticalCell( const 
ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfo ) override;
+    virtual void TableNodeInfoInner( const 
ww8::WW8TableNodeInfoInner::Pointer_t& pNodeInfoInner ) override;
+    virtual void TableOrientation( const 
ww8::WW8TableNodeInfoInner::Pointer_t& pTableTextNodeInfoInner ) override;
+    virtual void TableSpacing( const ww8::WW8TableNodeInfoInner::Pointer_t& 
pTableTextNodeInfoInner ) override;
     virtual void TableRowEnd( sal_uInt32 nDepth ) override;
 
     /// Start of the styles table.
diff --git a/sw/source/uibase/utlui/glbltree.cxx 
b/sw/source/uibase/utlui/glbltree.cxx
index 8c8fef089161..5625be8cdc05 100644
--- a/sw/source/uibase/utlui/glbltree.cxx
+++ b/sw/source/uibase/utlui/glbltree.cxx
@@ -1151,12 +1151,11 @@ IMPL_LINK( SwGlobalTree, DialogClosedHdl, 
sfx2::FileDialogHelper*, _pFileDlg, vo
     for (const std::unique_ptr<SfxMedium>& pMed : aMedList)
     {
         // tdf#127978 - don't URL encode filename for navigator's tooltip
-        OUString sFileName
+        pFileNames[nPos++]
             = 
pMed->GetURLObject().GetMainURL(INetURLObject::DecodeMechanism::Unambiguous)
             + OUStringChar(sfx2::cTokenSeparator)
             + pMed->GetFilter()->GetFilterName()
             + OUStringChar(sfx2::cTokenSeparator);
-        pFileNames[nPos++] = sFileName;
     }
     InsertRegion( &*m_oDocContent, aFileNames );
     m_oDocContent.reset();
diff --git a/vcl/inc/jsdialog/jsdialogbuilder.hxx 
b/vcl/inc/jsdialog/jsdialogbuilder.hxx
index f553e7e96bd8..55183d95558f 100644
--- a/vcl/inc/jsdialog/jsdialogbuilder.hxx
+++ b/vcl/inc/jsdialog/jsdialogbuilder.hxx
@@ -510,7 +510,7 @@ public:
     virtual void response(int response) override;
     virtual weld::Button* weld_widget_for_response(int response) override;
     virtual int run() override;
-    virtual bool runAsync(std::shared_ptr<weld::DialogController> aOwner,
+    virtual bool runAsync(std::shared_ptr<weld::DialogController> const& 
rxOwner,
                           const std::function<void(sal_Int32)>& rEndDialogFn) 
override;
     virtual bool runAsync(std::shared_ptr<Dialog> const& rxSelf,
                           const std::function<void(sal_Int32)>& func) override;
@@ -527,7 +527,7 @@ public:
     virtual void response(int response) override;
     virtual weld::Button* weld_widget_for_response(int response) override;
     virtual int run() override;
-    virtual bool runAsync(std::shared_ptr<weld::DialogController> aOwner,
+    virtual bool runAsync(std::shared_ptr<weld::DialogController> const& 
rxOwner,
                           const std::function<void(sal_Int32)>& rEndDialogFn) 
override;
     virtual bool runAsync(std::shared_ptr<Dialog> const& rxSelf,
                           const std::function<void(sal_Int32)>& func) override;
@@ -696,7 +696,7 @@ public:
 
     virtual int run() override;
     // TODO: move to dialog class so we will not send json when built but on 
run
-    bool runAsync(std::shared_ptr<weld::DialogController> aOwner,
+    bool runAsync(std::shared_ptr<weld::DialogController> const& rxOwner,
                   const std::function<void(sal_Int32)>& rEndDialogFn) override;
 
     bool runAsync(std::shared_ptr<Dialog> const& rxSelf,
diff --git a/vcl/inc/salvtables.hxx b/vcl/inc/salvtables.hxx
index 4074e097a4f4..88025bde129c 100644
--- a/vcl/inc/salvtables.hxx
+++ b/vcl/inc/salvtables.hxx
@@ -527,7 +527,7 @@ private:
 public:
     SalInstanceDialog(::Dialog* pDialog, SalInstanceBuilder* pBuilder, bool 
bTakeOwnership);
 
-    virtual bool runAsync(std::shared_ptr<weld::DialogController> aOwner,
+    virtual bool runAsync(std::shared_ptr<weld::DialogController> const& 
rxOwner,
                           const std::function<void(sal_Int32)>& rEndDialogFn) 
override;
 
     virtual bool runAsync(std::shared_ptr<Dialog> const& rxSelf,
diff --git a/vcl/jsdialog/jsdialogbuilder.cxx b/vcl/jsdialog/jsdialogbuilder.cxx
index 060d75e58807..7b3b304bf82b 100644
--- a/vcl/jsdialog/jsdialogbuilder.cxx
+++ b/vcl/jsdialog/jsdialogbuilder.cxx
@@ -1379,10 +1379,10 @@ int JSDialog::run()
     return ret;
 }
 
-bool JSDialog::runAsync(std::shared_ptr<weld::DialogController> aOwner,
+bool JSDialog::runAsync(std::shared_ptr<weld::DialogController> const& rxOwner,
                         const std::function<void(sal_Int32)>& rEndDialogFn)
 {
-    bool ret = SalInstanceDialog::runAsync(aOwner, rEndDialogFn);
+    bool ret = SalInstanceDialog::runAsync(rxOwner, rEndDialogFn);
     sendFullUpdate();
     return ret;
 }
@@ -1402,10 +1402,10 @@ int JSAssistant::run()
     return ret;
 }
 
-bool JSAssistant::runAsync(std::shared_ptr<weld::DialogController> aOwner,
+bool JSAssistant::runAsync(std::shared_ptr<weld::DialogController> const& 
rxOwner,
                            const std::function<void(sal_Int32)>& rEndDialogFn)
 {
-    bool ret = SalInstanceDialog::runAsync(aOwner, rEndDialogFn);
+    bool ret = SalInstanceDialog::runAsync(rxOwner, rEndDialogFn);
     sendFullUpdate();
     return ret;
 }
@@ -1855,10 +1855,10 @@ int JSMessageDialog::run()
     return bRet;
 }
 
-bool JSMessageDialog::runAsync(std::shared_ptr<weld::DialogController> aOwner,
+bool JSMessageDialog::runAsync(std::shared_ptr<weld::DialogController> const& 
rxOwner,
                                const std::function<void(sal_Int32)>& 
rEndDialogFn)
 {
-    bool bRet = SalInstanceMessageDialog::runAsync(aOwner, rEndDialogFn);
+    bool bRet = SalInstanceMessageDialog::runAsync(rxOwner, rEndDialogFn);
 
     RememberMessageDialog();
     sendFullUpdate();
diff --git a/vcl/source/app/salvtables.cxx b/vcl/source/app/salvtables.cxx
index 17e6435c3fc2..f51ce48a505c 100644
--- a/vcl/source/app/salvtables.cxx
+++ b/vcl/source/app/salvtables.cxx
@@ -1771,11 +1771,11 @@ SalInstanceDialog::SalInstanceDialog(::Dialog* pDialog, 
SalInstanceBuilder* pBui
     }
 }
 
-bool SalInstanceDialog::runAsync(std::shared_ptr<weld::DialogController> 
aOwner,
+bool SalInstanceDialog::runAsync(std::shared_ptr<weld::DialogController> 
const& rxOwner,
                                  const std::function<void(sal_Int32)>& 
rEndDialogFn)
 {
     VclAbstractDialog::AsyncContext aCtx;
-    aCtx.mxOwnerDialogController = aOwner;
+    aCtx.mxOwnerDialogController = rxOwner;
     aCtx.maEndDialogFn = rEndDialogFn;
     VclButtonBox* pActionArea = m_xDialog->get_action_area();
     if (pActionArea)
diff --git a/vcl/source/font/FeatureParser.cxx 
b/vcl/source/font/FeatureParser.cxx
index 697662032f75..44b7d962429d 100644
--- a/vcl/source/font/FeatureParser.cxx
+++ b/vcl/source/font/FeatureParser.cxx
@@ -46,8 +46,7 @@ FeatureParser::FeatureParser(std::u16string_view rFontName)
         }
         else
         {
-            OString sFeature = OUStringToOString(sToken, 
RTL_TEXTENCODING_ASCII_US);
-            FeatureSetting aFeature(sFeature);
+            FeatureSetting aFeature(OUStringToOString(sToken, 
RTL_TEXTENCODING_ASCII_US));
             if (aFeature.m_nTag != 0)
                 m_aFeatures.push_back(aFeature);
         }
diff --git a/vcl/source/gdi/pdfextoutdevdata.cxx 
b/vcl/source/gdi/pdfextoutdevdata.cxx
index c2c838d5db55..c15b917d3420 100644
--- a/vcl/source/gdi/pdfextoutdevdata.cxx
+++ b/vcl/source/gdi/pdfextoutdevdata.cxx
@@ -829,8 +829,7 @@ void PDFExtOutDevData::SetAlternateText( const OUString& 
rText )
 
 void PDFExtOutDevData::CreateControl( const PDFWriter::AnyWidget& rControlType 
)
 {
-    std::shared_ptr< PDFWriter::AnyWidget > pClone( rControlType.Clone() );
-    mpPageSyncData->PushAction( mrOutDev, vcl::CreateControl{ pClone } );
+    mpPageSyncData->PushAction(mrOutDev, vcl::CreateControl{ 
rControlType.Clone() });
 }
 
 void PDFExtOutDevData::BeginGroup()
diff --git a/vcl/unx/gtk3/fpicker/SalGtkFolderPicker.cxx 
b/vcl/unx/gtk3/fpicker/SalGtkFolderPicker.cxx
index 57b6e7c53e18..867e28a9124d 100644
--- a/vcl/unx/gtk3/fpicker/SalGtkFolderPicker.cxx
+++ b/vcl/unx/gtk3/fpicker/SalGtkFolderPicker.cxx
@@ -148,8 +148,6 @@ sal_Int16 SAL_CALL SalGtkFolderPicker::execute()
     uno::Reference< awt::XExtendedToolkit > xToolkit =
         awt::Toolkit::create(m_xContext);
 
-    uno::Reference<frame::XDesktop> xDesktop = 
frame::Desktop::create(m_xContext);
-
     GtkWindow *pParent = GTK_WINDOW(m_pParentWidget);
     if (!pParent)
     {
@@ -158,7 +156,7 @@ sal_Int16 SAL_CALL SalGtkFolderPicker::execute()
     }
     if (pParent)
         gtk_window_set_transient_for(GTK_WINDOW(m_pDialog), pParent);
-    rtl::Reference<RunDialog> pRunDialog = new RunDialog(m_pDialog, xToolkit, 
xDesktop);
+    rtl::Reference<RunDialog> pRunDialog = new RunDialog(m_pDialog, xToolkit, 
frame::Desktop::create(m_xContext));
     gint nStatus = pRunDialog->run();
     switch( nStatus )
     {
diff --git a/vcl/unx/gtk3/gtkinst.cxx b/vcl/unx/gtk3/gtkinst.cxx
index c76d6291cedf..3def046ce22a 100644
--- a/vcl/unx/gtk3/gtkinst.cxx
+++ b/vcl/unx/gtk3/gtkinst.cxx
@@ -7057,7 +7057,8 @@ public:
         }
     }
 
-    virtual bool runAsync(std::shared_ptr<weld::DialogController> 
rDialogController, const std::function<void(sal_Int32)>& func) override
+    virtual bool runAsync(const std::shared_ptr<weld::DialogController>& 
rDialogController,
+                          const std::function<void(sal_Int32)>& func) override
     {
         assert(!m_nResponseSignalId && !m_nCancelSignalId && 
!m_nSignalDeleteId);
 
diff --git a/xmloff/source/chart/SchXMLChartContext.cxx 
b/xmloff/source/chart/SchXMLChartContext.cxx
index 7a8ac46c40a9..dc3e4266be03 100644
--- a/xmloff/source/chart/SchXMLChartContext.cxx
+++ b/xmloff/source/chart/SchXMLChartContext.cxx
@@ -1063,9 +1063,8 @@ css::uno::Reference< css::xml::sax::XFastContextHandler > 
SchXMLChartContext::cr
                 {
                     xProp->setPropertyValue("HasSubTitle", uno::Any(true) );
                 }
-                uno::Reference< drawing::XShape > xTitleShape = 
xDoc->getSubTitle();
                 pContext = new SchXMLTitleContext( mrImportHelper, GetImport(),
-                                                   maSubTitle, xTitleShape );
+                                                   maSubTitle, 
xDoc->getSubTitle() );
             }
             break;
         case XML_ELEMENT(CHART, XML_LEGEND):
diff --git a/xmloff/source/text/txtlists.cxx b/xmloff/source/text/txtlists.cxx
index 1d8d7ebe5dac..86b1d86450da 100644
--- a/xmloff/source/text/txtlists.cxx
+++ b/xmloff/source/text/txtlists.cxx
@@ -117,9 +117,7 @@ void XMLTextListsHelper::KeepListAsProcessed( const 
OUString& sListId,
         mpProcessedLists = std::make_unique<tMapForLists>();
     }
 
-    ::std::pair< OUString, OUString >
-                                aListData( sListStyleName, sContinueListId );
-    (*mpProcessedLists)[ sListId ] = aListData;
+    (*mpProcessedLists)[ sListId ] = std::make_pair(sListStyleName, 
sContinueListId);
 
     msLastProcessedListId = sListId;
     msListStyleOfLastProcessedList = sListStyleName;
commit 3dd1948e791e511557bc7be25aa3306439c9e94c
Author:     Caolán McNamara <[email protected]>
AuthorDate: Tue Dec 19 08:41:08 2023 +0000
Commit:     Caolán McNamara <[email protected]>
CommitDate: Tue Dec 19 17:18:30 2023 +0100

    cid#1559313 Dereference null return value
    
    we already have the ScPostIt here
    
    Change-Id: I646cbe073be3a63f8aeaa4939406b56a73b6382e
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160973
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <[email protected]>

diff --git a/sc/source/ui/view/output.cxx b/sc/source/ui/view/output.cxx
index 1696df328404..7eeec493219c 100644
--- a/sc/source/ui/view/output.cxx
+++ b/sc/source/ui/view/output.cxx
@@ -2572,8 +2572,9 @@ void ScOutputData::AddPDFNotes()
                     // use origin's pCell for NotePtr test below
                 }
 
-                if ( mpDoc->GetNote(nMergeX, nMergeY, nTab) && ( bIsMerged ||
-                        ( !pInfo->bHOverlapped && !pInfo->bVOverlapped ) ) )
+                const ScPostIt* pNote = mpDoc->GetNote(nMergeX, nMergeY, nTab);
+
+                if ( pNote && ( bIsMerged || ( !pInfo->bHOverlapped && 
!pInfo->bVOverlapped ) ) )
                 {
                     tools::Long nNoteWidth = static_cast<tools::Long>( 
SC_CLIPMARK_SIZE * mnPPTX );
                     tools::Long nNoteHeight = static_cast<tools::Long>( 
SC_CLIPMARK_SIZE * mnPPTY );
@@ -2592,7 +2593,6 @@ void ScOutputData::AddPDFNotes()
                     if ( bLayoutRTL ? ( nMarkX >= 0 ) : ( nMarkX < nScrX+nScrW 
) )
                     {
                         tools::Rectangle aNoteRect( nMarkX, nPosY, 
nMarkX+nNoteWidth*nLayoutSign, nPosY+nNoteHeight );
-                        const ScPostIt* pNote = mpDoc->GetNote(nMergeX, 
nMergeY, nTab);
 
                         vcl::PDFNote aNote;
 

Reply via email to