diff options
Diffstat (limited to 'xmloff/source/draw/animationexport.cxx')
-rw-r--r-- | xmloff/source/draw/animationexport.cxx | 14 |
1 files changed, 3 insertions, 11 deletions
diff --git a/xmloff/source/draw/animationexport.cxx b/xmloff/source/draw/animationexport.cxx index 97ae81c7b97a..9d6a5d92fa10 100644 --- a/xmloff/source/draw/animationexport.cxx +++ b/xmloff/source/draw/animationexport.cxx @@ -531,7 +531,7 @@ private: SvXMLExport& mrExport; Reference< XInterface > mxExport; Reference< XPropertySet > mxPageProps; - XMLSdPropHdlFactory* mpSdPropHdlFactory; + rtl::Reference<XMLSdPropHdlFactory> mxSdPropHdlFactory; }; AnimationsExporterImpl::AnimationsExporterImpl( SvXMLExport& rExport, const Reference< XPropertySet >& xPageProps ) @@ -548,19 +548,11 @@ AnimationsExporterImpl::AnimationsExporterImpl( SvXMLExport& rExport, const Refe OSL_FAIL( "xmloff::AnimationsExporterImpl::AnimationsExporterImpl(), RuntimeException caught!" ); } - mpSdPropHdlFactory = new XMLSdPropHdlFactory( mrExport.GetModel(), mrExport ); - // set lock to avoid deletion - mpSdPropHdlFactory->acquire(); + mxSdPropHdlFactory = new XMLSdPropHdlFactory( mrExport.GetModel(), mrExport ); } AnimationsExporterImpl::~AnimationsExporterImpl() { - // cleanup factory, decrease refcount. Should lead to destruction. - if(mpSdPropHdlFactory) - { - mpSdPropHdlFactory->release(); - mpSdPropHdlFactory = nullptr; - } } void AnimationsExporterImpl::exportTransitionNode() @@ -1527,7 +1519,7 @@ void AnimationsExporterImpl::convertValue( XMLTokenEnum eAttributeName, OUString } //const XMLPropertyHandler* pHandler = static_cast<SdXMLExport*>(&mrExport)->GetSdPropHdlFactory()->GetPropertyHandler( nType ); - const XMLPropertyHandler* pHandler = mpSdPropHdlFactory->GetPropertyHandler( nType ); + const XMLPropertyHandler* pHandler = mxSdPropHdlFactory->GetPropertyHandler( nType ); if( pHandler ) { pHandler->exportXML( aString, rValue, mrExport.GetMM100UnitConverter() ); |