summaryrefslogtreecommitdiff
path: root/sw/source/filter/xml/wrtxml.cxx
diff options
context:
space:
mode:
authorNoel Grandin <noel.grandin@collabora.co.uk>2017-10-06 14:10:00 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2017-10-06 16:12:44 +0200
commit3035a8066ffc7120bb6a6da2c50d5b032611bb90 (patch)
tree8fa1c1b77d35f07a63f26ee7e9d4ae952378d6ac /sw/source/filter/xml/wrtxml.cxx
parent0d24dd25e6f506b5f9128d70d7eb21f0bb4dde89 (diff)
use rtl::Reference in SvXMLEmbeddedObjectHelper
instead of manual ref-counting Change-Id: I559ebb3871dd3dd4a160bd83a259e36dd2f7b4d6 Reviewed-on: https://gerrit.libreoffice.org/43200 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'sw/source/filter/xml/wrtxml.cxx')
-rw-r--r--sw/source/filter/xml/wrtxml.cxx11
1 files changed, 6 insertions, 5 deletions
diff --git a/sw/source/filter/xml/wrtxml.cxx b/sw/source/filter/xml/wrtxml.cxx
index 00562c6f7a25..e7469aec35dc 100644
--- a/sw/source/filter/xml/wrtxml.cxx
+++ b/sw/source/filter/xml/wrtxml.cxx
@@ -82,7 +82,7 @@ ErrCode SwXMLWriter::Write_( const uno::Reference < task::XStatusIndicator >& xS
uno::Reference< document::XGraphicObjectResolver > xGraphicResolver;
SvXMLGraphicHelper *pGraphicHelper = nullptr;
uno::Reference< document::XEmbeddedObjectResolver > xObjectResolver;
- SvXMLEmbeddedObjectHelper *pObjectHelper = nullptr;
+ rtl::Reference<SvXMLEmbeddedObjectHelper> xObjectHelper;
OSL_ENSURE( xStg.is(), "Where is my storage?" );
pGraphicHelper = SvXMLGraphicHelper::Create( xStg,
@@ -93,10 +93,10 @@ ErrCode SwXMLWriter::Write_( const uno::Reference < task::XStatusIndicator >& xS
SfxObjectShell *pPersist = pDoc->GetPersist();
if( pPersist )
{
- pObjectHelper = SvXMLEmbeddedObjectHelper::Create(
+ xObjectHelper = SvXMLEmbeddedObjectHelper::Create(
xStg, *pPersist,
SvXMLEmbeddedObjectHelperMode::Write );
- xObjectResolver = pObjectHelper;
+ xObjectResolver = xObjectHelper.get();
}
// create and prepare the XPropertySet that gets passed through
@@ -392,8 +392,9 @@ ErrCode SwXMLWriter::Write_( const uno::Reference < task::XStatusIndicator >& xS
SvXMLGraphicHelper::Destroy( pGraphicHelper );
xGraphicResolver = nullptr;
- if( pObjectHelper )
- SvXMLEmbeddedObjectHelper::Destroy( pObjectHelper );
+ if( xObjectHelper )
+ xObjectHelper->dispose();
+ xObjectHelper.clear();
xObjectResolver = nullptr;
// restore redline mode