[Libreoffice-commits] core.git: 2 commits - compilerplugins/clang sw/source
Libreoffice Gerrit user
logerrit at kemper.freedesktop.org
Tue Jul 24 06:33:21 UTC 2018
compilerplugins/clang/useuniqueptr.cxx | 3 +++
sw/source/filter/html/htmlatr.cxx | 14 +++++++-------
sw/source/filter/html/htmlflywriter.cxx | 5 ++---
sw/source/filter/html/wrthtml.cxx | 15 ++++++---------
sw/source/filter/html/wrthtml.hxx | 6 +++---
sw/source/filter/xml/xmlexp.cxx | 1 +
sw/source/filter/xml/xmlexp.hxx | 6 +++---
sw/source/filter/xml/xmliteme.cxx | 12 ++++++------
sw/source/filter/xml/xmltble.cxx | 9 +++------
9 files changed, 34 insertions(+), 37 deletions(-)
New commits:
commit 94e3568d3d1aa399d13c53f53a699c49da3e929c
Author: Noel Grandin <noel.grandin at collabora.co.uk>
AuthorDate: Mon Jul 23 09:35:43 2018 +0200
Commit: Noel Grandin <noel.grandin at collabora.co.uk>
CommitDate: Tue Jul 24 08:33:07 2018 +0200
loplugin:useuniqueptr in SwXMLExport
Change-Id: Id0354b73b0ff14b6a168b672f25483c07988494e
Reviewed-on: https://gerrit.libreoffice.org/57864
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin at collabora.co.uk>
diff --git a/sw/source/filter/xml/xmlexp.cxx b/sw/source/filter/xml/xmlexp.cxx
index 8a7da0693df1..1f86cd989b28 100644
--- a/sw/source/filter/xml/xmlexp.cxx
+++ b/sw/source/filter/xml/xmlexp.cxx
@@ -51,6 +51,7 @@
#include <unotext.hxx>
#include "xmltexte.hxx"
#include "xmlexp.hxx"
+#include "xmlexpit.hxx"
#include <sfx2/viewsh.hxx>
#include <comphelper/processfactory.hxx>
#include <docary.hxx>
diff --git a/sw/source/filter/xml/xmlexp.hxx b/sw/source/filter/xml/xmlexp.hxx
index 211f50840da6..22e6a42368a7 100644
--- a/sw/source/filter/xml/xmlexp.hxx
+++ b/sw/source/filter/xml/xmlexp.hxx
@@ -47,9 +47,9 @@ typedef std::vector< SwXMLTableLines_Impl* > SwXMLTableLinesCache_Impl;
class SwXMLExport : public SvXMLExport
{
- SvXMLUnitConverter* m_pTwipUnitConverter;
- SvXMLExportItemMapper* m_pTableItemMapper;
- SwXMLTableLinesCache_Impl* m_pTableLines;
+ std::unique_ptr<SvXMLUnitConverter> m_pTwipUnitConverter;
+ std::unique_ptr<SvXMLExportItemMapper> m_pTableItemMapper;
+ std::unique_ptr<SwXMLTableLinesCache_Impl> m_pTableLines;
SvXMLItemMapEntriesRef m_xTableItemMap;
SvXMLItemMapEntriesRef m_xTableRowItemMap;
diff --git a/sw/source/filter/xml/xmliteme.cxx b/sw/source/filter/xml/xmliteme.cxx
index 60eaedd1f562..7ba4db9501d2 100644
--- a/sw/source/filter/xml/xmliteme.cxx
+++ b/sw/source/filter/xml/xmliteme.cxx
@@ -207,25 +207,25 @@ inline void SwXMLTableItemMapper_Impl::SetAbsWidth( sal_uInt32 nAbs )
void SwXMLExport::InitItemExport()
{
- m_pTwipUnitConverter = new SvXMLUnitConverter(getComponentContext(),
- util::MeasureUnit::TWIP, GetMM100UnitConverter().GetXMLMeasureUnit());
+ m_pTwipUnitConverter.reset(new SvXMLUnitConverter(getComponentContext(),
+ util::MeasureUnit::TWIP, GetMM100UnitConverter().GetXMLMeasureUnit()));
m_xTableItemMap = new SvXMLItemMapEntries( aXMLTableItemMap );
m_xTableRowItemMap = new SvXMLItemMapEntries( aXMLTableRowItemMap );
m_xTableCellItemMap = new SvXMLItemMapEntries( aXMLTableCellItemMap );
- m_pTableItemMapper = new SwXMLTableItemMapper_Impl( m_xTableItemMap, *this );
+ m_pTableItemMapper.reset(new SwXMLTableItemMapper_Impl( m_xTableItemMap, *this ));
}
void SwXMLExport::FinitItemExport()
{
- delete m_pTableItemMapper;
- delete m_pTwipUnitConverter;
+ m_pTableItemMapper.reset();
+ m_pTwipUnitConverter.reset();
}
void SwXMLExport::ExportTableFormat( const SwFrameFormat& rFormat, sal_uInt32 nAbsWidth )
{
- static_cast<SwXMLTableItemMapper_Impl *>(m_pTableItemMapper)
+ static_cast<SwXMLTableItemMapper_Impl *>(m_pTableItemMapper.get())
->SetAbsWidth( nAbsWidth );
ExportFormat( rFormat, XML_TABLE );
}
diff --git a/sw/source/filter/xml/xmltble.cxx b/sw/source/filter/xml/xmltble.cxx
index 4077ce852723..9dbc82d0e92a 100644
--- a/sw/source/filter/xml/xmltble.cxx
+++ b/sw/source/filter/xml/xmltble.cxx
@@ -569,7 +569,7 @@ void SwXMLExport::ExportTableLinesAutoStyles( const SwTableLines& rLines,
// pass 1: calculate columns
SwXMLTableLines_Impl *pLines = new SwXMLTableLines_Impl( rLines );
if( !m_pTableLines )
- m_pTableLines = new SwXMLTableLinesCache_Impl;
+ m_pTableLines.reset(new SwXMLTableLinesCache_Impl);
m_pTableLines->push_back( pLines );
@@ -995,10 +995,7 @@ void SwXMLExport::ExportTableLines( const SwTableLines& rLines,
m_pTableLines->erase( it );
if( m_pTableLines->empty() )
- {
- delete m_pTableLines ;
- m_pTableLines = nullptr;
- }
+ m_pTableLines.reset();
// pass 2: export columns
const SwXMLTableColumns_Impl& rCols = pLines->GetColumns();
@@ -1201,7 +1198,7 @@ void SwXMLExport::DeleteTableLines()
for (SwXMLTableLines_Impl* p : *m_pTableLines)
delete p;
m_pTableLines->clear();
- delete m_pTableLines;
+ m_pTableLines.reset();
}
}
commit dba5dccfc5606ed6c6c888524460c9546143aaef
Author: Noel Grandin <noel.grandin at collabora.co.uk>
AuthorDate: Mon Jul 23 09:24:24 2018 +0200
Commit: Noel Grandin <noel.grandin at collabora.co.uk>
CommitDate: Tue Jul 24 08:32:56 2018 +0200
loplugin:useuniqueptr in SwHTMLWriter
Change-Id: I67f3dd615e798f8ac865b57332f6153530d81929
Reviewed-on: https://gerrit.libreoffice.org/57863
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin at collabora.co.uk>
diff --git a/compilerplugins/clang/useuniqueptr.cxx b/compilerplugins/clang/useuniqueptr.cxx
index 4d5b7fc0733a..c7f6d7a2444c 100644
--- a/compilerplugins/clang/useuniqueptr.cxx
+++ b/compilerplugins/clang/useuniqueptr.cxx
@@ -104,6 +104,9 @@ public:
// SaveLine::pBox, pNext
if (fn == SRCDIR "/sw/source/core/undo/untbl.cxx")
return;
+ // RedlineInfo::pNextRedline
+ if (fn == SRCDIR "/sw/source/filter/xml/XMLRedlineImportHelper.cxx")
+ return;
TraverseDecl(compiler.getASTContext().getTranslationUnitDecl());
}
diff --git a/sw/source/filter/html/htmlatr.cxx b/sw/source/filter/html/htmlatr.cxx
index e69dac37946f..e5a8b05e993b 100644
--- a/sw/source/filter/html/htmlatr.cxx
+++ b/sw/source/filter/html/htmlatr.cxx
@@ -1079,7 +1079,7 @@ class HTMLEndPosLst
SwDoc *pDoc; // the current document
SwDoc* pTemplate; // the HTML template (or 0)
- const Color* pDfltColor;// the default foreground colors
+ boost::optional<Color> xDfltColor;// the default foreground colors
std::set<OUString>& rScriptTextStyles;
sal_uLong nHTMLMode;
@@ -1123,7 +1123,7 @@ class HTMLEndPosLst
public:
- HTMLEndPosLst( SwDoc *pDoc, SwDoc* pTemplate, const Color* pDfltColor,
+ HTMLEndPosLst( SwDoc *pDoc, SwDoc* pTemplate, boost::optional<Color> xDfltColor,
bool bOutStyles, sal_uLong nHTMLMode,
const OUString& rText, std::set<OUString>& rStyles );
~HTMLEndPosLst();
@@ -1570,12 +1570,12 @@ const SwHTMLFormatInfo *HTMLEndPosLst::GetFormatInfo( const SwFormat& rFormat,
}
HTMLEndPosLst::HTMLEndPosLst( SwDoc *pD, SwDoc* pTempl,
- const Color* pDfltCol, bool bStyles,
+ boost::optional<Color> xDfltCol, bool bStyles,
sal_uLong nMode, const OUString& rText,
std::set<OUString>& rStyles ):
pDoc( pD ),
pTemplate( pTempl ),
- pDfltColor( pDfltCol ),
+ xDfltColor( xDfltCol ),
rScriptTextStyles( rStyles ),
nHTMLMode( nMode ),
bOutStyles( bStyles )
@@ -1681,8 +1681,8 @@ void HTMLEndPosLst::InsertNoScript( const SfxPoolItem& rItem,
Color aColor( static_cast<const SvxColorItem&>(rItem).GetValue() );
if( COL_AUTO == aColor )
aColor = COL_BLACK;
- bSet = !bParaAttrs || !pDfltColor ||
- !pDfltColor->IsRGBEqual( aColor );
+ bSet = !bParaAttrs || !xDfltColor ||
+ !xDfltColor->IsRGBEqual( aColor );
}
break;
@@ -2259,7 +2259,7 @@ Writer& OutHTML_SwTextNode( Writer& rWrt, const SwContentNode& rNode )
// are there any hard attributes that must be written as tags?
aFullText += rStr;
HTMLEndPosLst aEndPosLst( rWrt.m_pDoc, rHTMLWrt.m_xTemplate.get(),
- rHTMLWrt.m_pDfltColor, rHTMLWrt.m_bCfgOutStyles,
+ rHTMLWrt.m_xDfltColor, rHTMLWrt.m_bCfgOutStyles,
rHTMLWrt.GetHTMLMode(), aFullText,
rHTMLWrt.m_aScriptTextStyles );
if( aFormatInfo.pItemSet )
diff --git a/sw/source/filter/html/htmlflywriter.cxx b/sw/source/filter/html/htmlflywriter.cxx
index 79b111405704..5d13d8854556 100644
--- a/sw/source/filter/html/htmlflywriter.cxx
+++ b/sw/source/filter/html/htmlflywriter.cxx
@@ -345,7 +345,7 @@ void SwHTMLWriter::CollectFlyFrames()
}
if( !m_pHTMLPosFlyFrames )
- m_pHTMLPosFlyFrames = new SwHTMLPosFlyFrames;
+ m_pHTMLPosFlyFrames.reset(new SwHTMLPosFlyFrames);
SwHTMLPosFlyFrame *pNew = new SwHTMLPosFlyFrame(**aIter, pSdrObj, nMode);
m_pHTMLPosFlyFrames->insert( pNew );
@@ -385,8 +385,7 @@ bool SwHTMLWriter::OutFlyFrame( sal_uLong nNdIdx, sal_Int32 nContentIdx, HtmlPos
i--;
if( m_pHTMLPosFlyFrames->empty() )
{
- delete m_pHTMLPosFlyFrames;
- m_pHTMLPosFlyFrames = nullptr;
+ m_pHTMLPosFlyFrames.reset();
bRestart = true; // not really, only exit the loop
}
diff --git a/sw/source/filter/html/wrthtml.cxx b/sw/source/filter/html/wrthtml.cxx
index b2f90146fa7c..2f8dde26a3bd 100644
--- a/sw/source/filter/html/wrthtml.cxx
+++ b/sw/source/filter/html/wrthtml.cxx
@@ -97,7 +97,6 @@ SwHTMLWriter::SwHTMLWriter( const OUString& rBaseURL )
, m_eCSS1Unit(FUNIT_NONE)
, m_pFootEndNotes(nullptr)
, mxFormComps()
- , m_pDfltColor(nullptr)
, m_pStartNdIdx(nullptr)
, m_pCurrPageDesc(nullptr)
, m_pFormatFootnote(nullptr)
@@ -324,7 +323,7 @@ ErrCode SwHTMLWriter::WriteStream()
::StartProgress( STR_STATSTR_W4WWRITE, 0, m_pDoc->GetNodes().Count(),
m_pDoc->GetDocShell());
- m_pDfltColor = nullptr;
+ m_xDfltColor.reset();
m_pFootEndNotes = nullptr;
m_pFormatFootnote = nullptr;
m_bOutTable = m_bOutHeader = m_bOutFooter = m_bOutFlyFrame = false;
@@ -487,8 +486,7 @@ ErrCode SwHTMLWriter::WriteStream()
if( m_pHTMLPosFlyFrames )
{
m_pHTMLPosFlyFrames->DeleteAndDestroyAll();
- delete m_pHTMLPosFlyFrames;
- m_pHTMLPosFlyFrames = nullptr;
+ m_pHTMLPosFlyFrames.reset();
}
m_aHTMLControls.DeleteAndDestroyAll();
@@ -513,8 +511,7 @@ ErrCode SwHTMLWriter::WriteStream()
m_aScriptParaStyles.clear();
m_aScriptTextStyles.clear();
- delete m_pDfltColor;
- m_pDfltColor = nullptr;
+ m_xDfltColor.reset();
delete m_pStartNdIdx;
m_pStartNdIdx = nullptr;
@@ -928,7 +925,7 @@ static void OutBodyColor( const sal_Char* pTag, const SwFormat *pFormat,
aColor = COL_BLACK;
HTMLOutFuncs::Out_Color( rHWrt.Strm(), aColor );
if( RES_POOLCOLL_STANDARD==pFormat->GetPoolFormatId() )
- rHWrt.m_pDfltColor = new Color( aColor );
+ rHWrt.m_xDfltColor = aColor;
}
}
@@ -1523,7 +1520,7 @@ HTMLSaveData::HTMLSaveData(SwHTMLWriter& rWriter, sal_uLong nStt,
// Only then also the numbering information of the next paragraph will be valid.
if( bSaveNum )
{
- pOldNumRuleInfo = new SwHTMLNumRuleInfo( rWrt.GetNumInfo() );
+ pOldNumRuleInfo.reset( new SwHTMLNumRuleInfo( rWrt.GetNumInfo() ) );
pOldNextNumRuleInfo = rWrt.ReleaseNextNumInfo();
}
else
@@ -1558,7 +1555,7 @@ HTMLSaveData::~HTMLSaveData()
if( pOldNumRuleInfo )
{
rWrt.GetNumInfo().Set( *pOldNumRuleInfo );
- delete pOldNumRuleInfo;
+ pOldNumRuleInfo.reset();
rWrt.SetNextNumInfo( std::move(pOldNextNumRuleInfo) );
}
else
diff --git a/sw/source/filter/html/wrthtml.hxx b/sw/source/filter/html/wrthtml.hxx
index 68495b7f15ad..ff58b49b901a 100644
--- a/sw/source/filter/html/wrthtml.hxx
+++ b/sw/source/filter/html/wrthtml.hxx
@@ -257,7 +257,7 @@ class IDocumentStylePoolAccess;
class SW_DLLPUBLIC SwHTMLWriter : public Writer
{
- SwHTMLPosFlyFrames *m_pHTMLPosFlyFrames;
+ std::unique_ptr<SwHTMLPosFlyFrames> m_pHTMLPosFlyFrames;
std::unique_ptr<SwHTMLNumRuleInfo> m_pNumRuleInfo;// current numbering
std::unique_ptr<SwHTMLNumRuleInfo> m_pNextNumRuleInfo;
sal_uInt32 m_nHTMLMode; // description of export configuration
@@ -296,7 +296,7 @@ public:
css::uno::Reference<css::container::XIndexContainer> mxFormComps; // current form
rtl::Reference<SwDoc> m_xTemplate; // HTML template
- Color *m_pDfltColor; // default colour
+ boost::optional<Color> m_xDfltColor; // default colour
SwNodeIndex *m_pStartNdIdx; // index of first paragraph
const SwPageDesc *m_pCurrPageDesc;// current page style
const SwFormatFootnote *m_pFormatFootnote;
@@ -621,7 +621,7 @@ struct HTMLSaveData
{
SwHTMLWriter& rWrt;
SwPaM* pOldPam, *pOldEnd;
- SwHTMLNumRuleInfo *pOldNumRuleInfo; // Owner = this
+ std::unique_ptr<SwHTMLNumRuleInfo> pOldNumRuleInfo; // Owner = this
std::unique_ptr<SwHTMLNumRuleInfo> pOldNextNumRuleInfo;
sal_uInt16 nOldDefListLvl;
SvxFrameDirection nOldDirection;
More information about the Libreoffice-commits
mailing list