[Libreoffice-commits] core.git: sd/source
Caolán McNamara
caolanm at redhat.com
Thu Mar 9 08:58:07 UTC 2017
sd/source/ui/framework/configuration/ResourceFactoryManager.cxx | 10 ++++++++++
1 file changed, 10 insertions(+)
New commits:
commit de978c0437620b84c3678705c926804318f6a996
Author: Caolán McNamara <caolanm at redhat.com>
Date: Wed Mar 8 17:06:36 2017 +0000
valgrind: fix leak
==2184== 1,396 (24 direct, 1,372 indirect) bytes in 1 blocks are definitely lost in loss record 11,080 of 11,791
...
==2184== by 0x31D4F774: sd::framework::BasicPaneFactory::createResource(com::sun::star::uno::Reference<com::sun::star::drawing::framework::XResourceId> const&) (BasicPaneFactory.cxx:258)
...
==2184== by 0x31D3F550: sd::framework::ConfigurationControllerResourceManager::ActivateResources(std::__debug::vector<com::sun::star::uno::Reference<com::sun::star::drawing::framework::XResourceId>, std::allocator<com::sun::star::uno::Reference<com::sun::star::drawing::framework::XResourceId> > > const&, com::sun::star::uno::Reference<com::sun::star::drawing::framework::XConfiguration> const&) (ConfigurationControllerResourceManager.cxx:74)
...
==2184== by 0x31D426A3: sd::framework::ConfigurationUpdater::UpdateCore(sd::framework::ConfigurationClassifier const&) (ConfigurationUpdater.cxx:247)
==2184== by 0x31D42B76: sd::framework::ConfigurationUpdater::UpdateConfiguration() (ConfigurationUpdater.cxx:156)
==2184== by 0x31D42F3E: sd::framework::ConfigurationUpdater::RequestUpdate(com::sun::star::uno::Reference<com::sun::star::drawing::framework::XConfiguration> const&) (ConfigurationUpdater.cxx:103)
Change-Id: I257ae26bc0e61696b1c8e27a1b3a75a993fac1a5
Reviewed-on: https://gerrit.libreoffice.org/34982
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm at redhat.com>
Tested-by: Caolán McNamara <caolanm at redhat.com>
diff --git a/sd/source/ui/framework/configuration/ResourceFactoryManager.cxx b/sd/source/ui/framework/configuration/ResourceFactoryManager.cxx
index 29a157d..adf3ed1 100644
--- a/sd/source/ui/framework/configuration/ResourceFactoryManager.cxx
+++ b/sd/source/ui/framework/configuration/ResourceFactoryManager.cxx
@@ -50,6 +50,16 @@ ResourceFactoryManager::ResourceFactoryManager (const Reference<XControllerManag
ResourceFactoryManager::~ResourceFactoryManager()
{
+ for (auto iXInterfaceResource = maFactoryMap.begin();
+ iXInterfaceResource != maFactoryMap.end();
+ ++iXInterfaceResource)
+ {
+ Reference<lang::XComponent> xComponent (iXInterfaceResource->second, UNO_QUERY);
+ iXInterfaceResource->second = nullptr;
+ if (xComponent.is())
+ xComponent->dispose();
+ }
+
Reference<lang::XComponent> xComponent (mxURLTransformer, UNO_QUERY);
if (xComponent.is())
xComponent->dispose();
More information about the Libreoffice-commits
mailing list