svx/source/fmcomp/gridctrl.cxx   |   15 ++++++---------
 sw/source/filter/ww8/ww8par.cxx  |   18 +++++++++---------
 sw/source/filter/ww8/ww8par.hxx  |    2 +-
 sw/source/filter/ww8/ww8scan.cxx |    2 +-
 sw/source/filter/ww8/ww8scan.hxx |    2 +-
 sw/source/filter/xml/xmltbli.cxx |   20 ++++++++++----------
 sw/source/filter/xml/xmltbli.hxx |    2 +-
 7 files changed, 29 insertions(+), 32 deletions(-)

New commits:
commit 4e9e9b796bf597a7ceedb608e3fbb0c1480b0633
Author:     Noel Grandin <noel.gran...@collabora.co.uk>
AuthorDate: Sat May 29 13:47:17 2021 +0200
Commit:     Noel Grandin <noel.gran...@collabora.co.uk>
CommitDate: Sun May 30 09:09:12 2021 +0200

    don't check isDisposed inside dispose()
    
    my fault, from a recent commit. besides defeating the dispose(), it
    should also be checked from the call sites.
    
    Change-Id: Ia09580d4224bcf78e5684015c747105fa6606878
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116383
    Tested-by: Jenkins
    Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk>

diff --git a/svx/source/fmcomp/gridctrl.cxx b/svx/source/fmcomp/gridctrl.cxx
index d631d87eef58..ab8f128a7b29 100644
--- a/svx/source/fmcomp/gridctrl.cxx
+++ b/svx/source/fmcomp/gridctrl.cxx
@@ -751,16 +751,13 @@ DbGridControl::~DbGridControl()
 
 void DbGridControl::dispose()
 {
-    if (!isDisposed())
-    {
-        RemoveColumns();
+    RemoveColumns();
 
-        m_bWantDestruction = true;
-        osl::MutexGuard aGuard(m_aDestructionSafety);
-        if (m_pFieldListeners)
-            DisconnectFromFields();
-        m_pCursorDisposeListener.reset();
-    }
+    m_bWantDestruction = true;
+    osl::MutexGuard aGuard(m_aDestructionSafety);
+    if (m_pFieldListeners)
+        DisconnectFromFields();
+    m_pCursorDisposeListener.reset();
 
     if (m_nDeleteEvent)
         Application::RemoveUserEvent(m_nDeleteEvent);
commit 1d641424d2591c3e221d0bd6a203f46e5c4352fe
Author:     Noel Grandin <noel.gran...@collabora.co.uk>
AuthorDate: Fri May 28 15:19:37 2021 +0200
Commit:     Noel Grandin <noel.gran...@collabora.co.uk>
CommitDate: Sun May 30 09:08:57 2021 +0200

    std::unique_ptr->std::optional
    
    Change-Id: I674ef2bccaa56d1435b821e3e161f7c47340202f
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116380
    Tested-by: Jenkins
    Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk>

diff --git a/sw/source/filter/ww8/ww8par.cxx b/sw/source/filter/ww8/ww8par.cxx
index a86e6f5b2687..9f8b38e6dd46 100644
--- a/sw/source/filter/ww8/ww8par.cxx
+++ b/sw/source/filter/ww8/ww8par.cxx
@@ -5366,7 +5366,7 @@ ErrCode SwWW8ImplReader::CoreLoad(WW8Glossary const 
*pGloss)
     m_xSBase.reset();
     m_xWDop.reset();
     m_xFonts.reset();
-    m_pAtnNames.reset();
+    m_xAtnNames.reset();
     m_xSprmParser.reset();
     m_xProgress.reset();
 
@@ -6090,10 +6090,10 @@ void SwWW8ImplReader::SetOutlineStyles()
 
 const OUString* SwWW8ImplReader::GetAnnotationAuthor(sal_uInt16 nIdx)
 {
-    if (!m_pAtnNames && m_xWwFib->m_lcbGrpStAtnOwners)
+    if (!m_xAtnNames && m_xWwFib->m_lcbGrpStAtnOwners)
     {
         // Determine authors: can be found in the TableStream
-        m_pAtnNames.reset(new std::vector<OUString>);
+        m_xAtnNames.emplace();
         SvStream& rStrm = *m_pTableStream;
 
         tools::Long nOldPos = rStrm.Tell();
@@ -6104,23 +6104,23 @@ const OUString* 
SwWW8ImplReader::GetAnnotationAuthor(sal_uInt16 nIdx)
         {
             if( m_bVer67 )
             {
-                m_pAtnNames->push_back(read_uInt8_PascalString(rStrm,
+                m_xAtnNames->push_back(read_uInt8_PascalString(rStrm,
                     RTL_TEXTENCODING_MS_1252));
-                nRead += m_pAtnNames->rbegin()->getLength() + 1; // Length + 
sal_uInt8 count
+                nRead += m_xAtnNames->rbegin()->getLength() + 1; // Length + 
sal_uInt8 count
             }
             else
             {
-                m_pAtnNames->push_back(read_uInt16_PascalString(rStrm));
+                m_xAtnNames->push_back(read_uInt16_PascalString(rStrm));
                 // Unicode: double the length + sal_uInt16 count
-                nRead += (m_pAtnNames->rbegin()->getLength() + 1)*2;
+                nRead += (m_xAtnNames->rbegin()->getLength() + 1)*2;
             }
         }
         rStrm.Seek( nOldPos );
     }
 
     const OUString *pRet = nullptr;
-    if (m_pAtnNames && nIdx < m_pAtnNames->size())
-        pRet = &((*m_pAtnNames)[nIdx]);
+    if (m_xAtnNames && nIdx < m_xAtnNames->size())
+        pRet = &((*m_xAtnNames)[nIdx]);
     return pRet;
 }
 
diff --git a/sw/source/filter/ww8/ww8par.hxx b/sw/source/filter/ww8/ww8par.hxx
index 575841ffbeee..d2ad5f67b6c7 100644
--- a/sw/source/filter/ww8/ww8par.hxx
+++ b/sw/source/filter/ww8/ww8par.hxx
@@ -1263,7 +1263,7 @@ private:
 
     std::unique_ptr<SwMSDffManager> m_xMSDffManager;
 
-    std::unique_ptr<std::vector<OUString>> m_pAtnNames;
+    std::optional<std::vector<OUString>> m_xAtnNames;
 
     std::unique_ptr<WW8SmartTagData> m_pSmartTagData;
 
diff --git a/sw/source/filter/ww8/ww8scan.cxx b/sw/source/filter/ww8/ww8scan.cxx
index 8f24ccac97c8..ae7309c4ca23 100644
--- a/sw/source/filter/ww8/ww8scan.cxx
+++ b/sw/source/filter/ww8/ww8scan.cxx
@@ -5074,7 +5074,7 @@ WW8PLCFMan::WW8PLCFMan(const WW8ScannerBase* pBase, 
ManTypes nType, tools::Long
         if( p->pPLCFx->IsSprm() )
         {
             // Careful: nEndPos must be
-            p->xIdStack.reset(new std::stack<sal_uInt16>);
+            p->xIdStack.emplace();
             if ((p == m_pChp) || (p == m_pPap))
             {
                 WW8_CP nTemp = p->nEndPos+p->nCpOfs;
diff --git a/sw/source/filter/ww8/ww8scan.hxx b/sw/source/filter/ww8/ww8scan.hxx
index 81221db9eb82..66d3a651ff78 100644
--- a/sw/source/filter/ww8/ww8scan.hxx
+++ b/sw/source/filter/ww8/ww8scan.hxx
@@ -878,7 +878,7 @@ enum ManTypes // enums for PLCFMan-ctor
 struct WW8PLCFxDesc
 {
     WW8PLCFx* pPLCFx;
-    std::unique_ptr<std::stack<sal_uInt16>> xIdStack;    // memory for Attr-Id 
for Attr-end(s)
+    std::optional<std::stack<sal_uInt16>> xIdStack;    // memory for Attr-Id 
for Attr-end(s)
     const sal_uInt8* pMemPos;// where are the Sprm(s)
     tools::Long nOrigSprmsLen;
 
diff --git a/sw/source/filter/xml/xmltbli.cxx b/sw/source/filter/xml/xmltbli.cxx
index db83fcda984c..8e72c781ab22 100644
--- a/sw/source/filter/xml/xmltbli.cxx
+++ b/sw/source/filter/xml/xmltbli.cxx
@@ -1286,7 +1286,7 @@ SwXMLTableContext::~SwXMLTableContext()
 {
     if (m_bOwnsBox1)
         delete m_pBox1;
-    m_pColumnDefaultCellStyleNames.reset();
+    m_xColumnDefaultCellStyleNames.reset();
     m_pSharedBoxFormats.reset();
     m_pRows.reset();
 
@@ -1354,21 +1354,21 @@ void SwXMLTableContext::InsertColumn( sal_Int32 
nWidth2, bool bRelWidth2,
         nWidth2 = MAX_WIDTH;
     m_aColumnWidths.emplace_back(nWidth2, bRelWidth2 );
     if( !((pDfltCellStyleName && !pDfltCellStyleName->isEmpty()) ||
-        m_pColumnDefaultCellStyleNames) )
+        m_xColumnDefaultCellStyleNames) )
         return;
 
-    if( !m_pColumnDefaultCellStyleNames )
+    if( !m_xColumnDefaultCellStyleNames )
     {
-        m_pColumnDefaultCellStyleNames.reset(new std::vector<OUString>);
+        m_xColumnDefaultCellStyleNames.emplace();
         sal_uLong nCount = m_aColumnWidths.size() - 1;
         while( nCount-- )
-            m_pColumnDefaultCellStyleNames->push_back(OUString());
+            m_xColumnDefaultCellStyleNames->push_back(OUString());
     }
 
     if(pDfltCellStyleName)
-        m_pColumnDefaultCellStyleNames->push_back(*pDfltCellStyleName);
+        m_xColumnDefaultCellStyleNames->push_back(*pDfltCellStyleName);
     else
-        m_pColumnDefaultCellStyleNames->push_back(OUString());
+        m_xColumnDefaultCellStyleNames->push_back(OUString());
 }
 
 sal_Int32 SwXMLTableContext::GetColumnWidth( sal_uInt32 nCol,
@@ -1387,8 +1387,8 @@ sal_Int32 SwXMLTableContext::GetColumnWidth( sal_uInt32 
nCol,
 
 OUString SwXMLTableContext::GetColumnDefaultCellStyleName( sal_uInt32 nCol ) 
const
 {
-    if( m_pColumnDefaultCellStyleNames && nCol < 
m_pColumnDefaultCellStyleNames->size())
-        return (*m_pColumnDefaultCellStyleNames)[static_cast<size_t>(nCol)];
+    if( m_xColumnDefaultCellStyleNames && nCol < 
m_xColumnDefaultCellStyleNames->size())
+        return (*m_xColumnDefaultCellStyleNames)[static_cast<size_t>(nCol)];
 
     return OUString();
 }
@@ -1476,7 +1476,7 @@ void SwXMLTableContext::InsertCell( const OUString& 
rStyleName,
     if( sStyleName.isEmpty() )
     {
         sStyleName = (*m_pRows)[m_nCurRow]->GetDefaultCellStyleName();
-        if( sStyleName.isEmpty() && m_pColumnDefaultCellStyleNames )
+        if( sStyleName.isEmpty() && m_xColumnDefaultCellStyleNames )
         {
             sStyleName = GetColumnDefaultCellStyleName( m_nCurCol );
             if( sStyleName.isEmpty() )
diff --git a/sw/source/filter/xml/xmltbli.hxx b/sw/source/filter/xml/xmltbli.hxx
index d29dc4b989f7..4a397b73c39e 100644
--- a/sw/source/filter/xml/xmltbli.hxx
+++ b/sw/source/filter/xml/xmltbli.hxx
@@ -60,7 +60,7 @@ class SwXMLTableContext : public XMLTextTableContext
         ColumnWidthInfo(sal_uInt16 wdth, bool isRel) : width(wdth), 
isRelative(isRel) {};
     };
     std::vector<ColumnWidthInfo> m_aColumnWidths;
-    std::unique_ptr<std::vector<OUString>> m_pColumnDefaultCellStyleNames;
+    std::optional<std::vector<OUString>> m_xColumnDefaultCellStyleNames;
 
     css::uno::Reference< css::text::XTextCursor > m_xOldCursor;
     css::uno::Reference< css::text::XTextContent > m_xTextContent;
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to