summaryrefslogtreecommitdiff
path: root/sw
diff options
context:
space:
mode:
authorNoel Grandin <noel.grandin@collabora.co.uk>2017-10-16 11:40:16 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2017-10-16 13:39:33 +0200
commit32eb4d56a4ea93e7dbfd947b62e18f05d8215421 (patch)
tree4594949fcc3cc52878f63f491b9d9bc402975a3b /sw
parent0c44f702a04db0fffd6884dcb014b28cdff5b21c (diff)
use rtl::Reference for SvXMLGraphicHelper
Change-Id: I0052b29660fb6157f7e98c4e124f030ba439d304 Reviewed-on: https://gerrit.libreoffice.org/43417 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'sw')
-rw-r--r--sw/source/filter/xml/swxml.cxx11
-rw-r--r--sw/source/filter/xml/wrtxml.cxx11
-rw-r--r--sw/source/filter/xml/xmlexp.cxx12
-rw-r--r--sw/source/filter/xml/xmlimp.cxx11
-rw-r--r--sw/source/filter/xml/xmlimp.hxx3
5 files changed, 25 insertions, 23 deletions
diff --git a/sw/source/filter/xml/swxml.cxx b/sw/source/filter/xml/swxml.cxx
index 6ddeb64b8f3e..652e84ef5ab8 100644
--- a/sw/source/filter/xml/swxml.cxx
+++ b/sw/source/filter/xml/swxml.cxx
@@ -474,7 +474,7 @@ ErrCode XMLReader::Read( SwDoc &rDoc, const OUString& rBaseURL, SwPaM &rPaM, con
comphelper::getProcessComponentContext();
uno::Reference< document::XGraphicObjectResolver > xGraphicResolver;
- SvXMLGraphicHelper *pGraphicHelper = nullptr;
+ rtl::Reference<SvXMLGraphicHelper> xGraphicHelper;
uno::Reference< document::XEmbeddedObjectResolver > xObjectResolver;
rtl::Reference<SvXMLEmbeddedObjectHelper> xObjectHelper;
@@ -488,10 +488,10 @@ ErrCode XMLReader::Read( SwDoc &rDoc, const OUString& rBaseURL, SwPaM &rPaM, con
if( !xStorage.is() )
return ERR_SWG_READ_ERROR;
- pGraphicHelper = SvXMLGraphicHelper::Create( xStorage,
+ xGraphicHelper = SvXMLGraphicHelper::Create( xStorage,
SvXMLGraphicHelperMode::Read,
false );
- xGraphicResolver = pGraphicHelper;
+ xGraphicResolver = xGraphicHelper.get();
SfxObjectShell *pPersist = rDoc.GetPersist();
if( pPersist )
{
@@ -888,8 +888,9 @@ ErrCode XMLReader::Read( SwDoc &rDoc, const OUString& rBaseURL, SwPaM &rPaM, con
lcl_EnsureValidPam( rPaM ); // move Pam into valid content
- if( pGraphicHelper )
- SvXMLGraphicHelper::Destroy( pGraphicHelper );
+ if( xGraphicHelper )
+ xGraphicHelper->dispose();
+ xGraphicHelper.clear();
xGraphicResolver = nullptr;
if( xObjectHelper )
xObjectHelper->dispose();
diff --git a/sw/source/filter/xml/wrtxml.cxx b/sw/source/filter/xml/wrtxml.cxx
index e7469aec35dc..b0afdaf0baa1 100644
--- a/sw/source/filter/xml/wrtxml.cxx
+++ b/sw/source/filter/xml/wrtxml.cxx
@@ -80,15 +80,15 @@ ErrCode SwXMLWriter::Write_( const uno::Reference < task::XStatusIndicator >& xS
// Get data sink ...
tools::SvRef<SotStorageStream> xDocStream;
uno::Reference< document::XGraphicObjectResolver > xGraphicResolver;
- SvXMLGraphicHelper *pGraphicHelper = nullptr;
+ rtl::Reference<SvXMLGraphicHelper> xGraphicHelper ;
uno::Reference< document::XEmbeddedObjectResolver > xObjectResolver;
rtl::Reference<SvXMLEmbeddedObjectHelper> xObjectHelper;
OSL_ENSURE( xStg.is(), "Where is my storage?" );
- pGraphicHelper = SvXMLGraphicHelper::Create( xStg,
+ xGraphicHelper = SvXMLGraphicHelper::Create( xStg,
SvXMLGraphicHelperMode::Write,
false );
- xGraphicResolver = pGraphicHelper;
+ xGraphicResolver = xGraphicHelper.get();
SfxObjectShell *pPersist = pDoc->GetPersist();
if( pPersist )
@@ -388,8 +388,9 @@ ErrCode SwXMLWriter::Write_( const uno::Reference < task::XStatusIndicator >& xS
}
}
- if( pGraphicHelper )
- SvXMLGraphicHelper::Destroy( pGraphicHelper );
+ if( xGraphicHelper )
+ xGraphicHelper->dispose();
+ xGraphicHelper.clear();
xGraphicResolver = nullptr;
if( xObjectHelper )
diff --git a/sw/source/filter/xml/xmlexp.cxx b/sw/source/filter/xml/xmlexp.cxx
index 7838281e699c..ac6fbe5f5f6a 100644
--- a/sw/source/filter/xml/xmlexp.cxx
+++ b/sw/source/filter/xml/xmlexp.cxx
@@ -238,12 +238,11 @@ ErrCode SwXMLExport::exportDoc( enum XMLTokenEnum eClass )
// we don't need it here.
// else: keep default pClass that we received
- SvXMLGraphicHelper *pGraphicResolver = nullptr;
+ rtl::Reference<SvXMLGraphicHelper> xGraphicResolver;
if( !GetGraphicResolver().is() )
{
- pGraphicResolver = SvXMLGraphicHelper::Create( SvXMLGraphicHelperMode::Write );
- Reference< XGraphicObjectResolver > xGraphicResolver( pGraphicResolver );
- SetGraphicResolver( xGraphicResolver );
+ xGraphicResolver = SvXMLGraphicHelper::Create( SvXMLGraphicHelperMode::Write );
+ SetGraphicResolver( xGraphicResolver.get() );
}
rtl::Reference<SvXMLEmbeddedObjectHelper> xEmbeddedResolver;
@@ -293,8 +292,9 @@ ErrCode SwXMLExport::exportDoc( enum XMLTokenEnum eClass )
pDoc->getIDocumentRedlineAccess().SetRedlineFlags( nRedlineFlags );
}
- if( pGraphicResolver )
- SvXMLGraphicHelper::Destroy( pGraphicResolver );
+ if( xGraphicResolver )
+ xGraphicResolver->dispose();
+ xGraphicResolver.clear();
if( xEmbeddedResolver )
xEmbeddedResolver->dispose();
xEmbeddedResolver.clear();
diff --git a/sw/source/filter/xml/xmlimp.cxx b/sw/source/filter/xml/xmlimp.cxx
index 03e0edaac60f..d266fac6c5d5 100644
--- a/sw/source/filter/xml/xmlimp.cxx
+++ b/sw/source/filter/xml/xmlimp.cxx
@@ -394,7 +394,6 @@ SwXMLImport::SwXMLImport(
m_pDocElemTokenMap( nullptr ),
m_pTableElemTokenMap( nullptr ),
m_pTableCellAttrTokenMap( nullptr ),
- m_pGraphicResolver( nullptr ),
m_nStyleFamilyMask( SfxStyleFamily::All ),
m_bLoadDoc( true ),
m_bInsert( false ),
@@ -662,9 +661,8 @@ void SwXMLImport::startDocument()
if( !GetGraphicResolver().is() )
{
- m_pGraphicResolver = SvXMLGraphicHelper::Create( SvXMLGraphicHelperMode::Read );
- Reference< document::XGraphicObjectResolver > xGraphicResolver( m_pGraphicResolver );
- SetGraphicResolver( xGraphicResolver );
+ m_xGraphicResolver = SvXMLGraphicHelper::Create( SvXMLGraphicHelperMode::Read );
+ SetGraphicResolver( m_xGraphicResolver.get() );
}
if( !GetEmbeddedResolver().is() )
@@ -690,8 +688,9 @@ void SwXMLImport::endDocument()
// this method will modify the document directly -> lock SolarMutex
SolarMutexGuard aGuard;
- if( m_pGraphicResolver )
- SvXMLGraphicHelper::Destroy( m_pGraphicResolver );
+ if( m_xGraphicResolver )
+ m_xGraphicResolver->dispose();
+ m_xGraphicResolver.clear();
if( m_xEmbeddedResolver )
m_xEmbeddedResolver->dispose();
m_xEmbeddedResolver.clear();
diff --git a/sw/source/filter/xml/xmlimp.hxx b/sw/source/filter/xml/xmlimp.hxx
index 1afa89ac1650..444186992c34 100644
--- a/sw/source/filter/xml/xmlimp.hxx
+++ b/sw/source/filter/xml/xmlimp.hxx
@@ -68,7 +68,8 @@ class SwXMLImport: public SvXMLImport
SvXMLTokenMap *m_pDocElemTokenMap;
SvXMLTokenMap *m_pTableElemTokenMap;
SvXMLTokenMap *m_pTableCellAttrTokenMap;
- SvXMLGraphicHelper *m_pGraphicResolver;
+ rtl::Reference<SvXMLGraphicHelper>
+ m_xGraphicResolver;
rtl::Reference<SvXMLEmbeddedObjectHelper>
m_xEmbeddedResolver;