[Libreoffice-commits] core.git: sfx2/source
Mark Wielaard
mark at klomp.org
Sun Jun 9 22:04:32 PDT 2013
sfx2/source/dialog/filedlghelper.cxx | 6 ++++++
1 file changed, 6 insertions(+)
New commits:
commit bc7bff4a0ee668249488ff6168136dd39e0a9362
Author: Mark Wielaard <mark at klomp.org>
Date: Sat Jun 8 00:41:22 2013 +0200
Fix memory leak in FileDialogHelper_Impl::createMatcher/addFilters.
Before resetting mpMatcher to a new value check whether the current
value needs to be deleted first.
Change-Id: I26039c19483621d809dbd8474b86254948efc9f6
Reviewed-on: https://gerrit.libreoffice.org/4194
Reviewed-by: David Tardon <dtardon at redhat.com>
Tested-by: David Tardon <dtardon at redhat.com>
diff --git a/sfx2/source/dialog/filedlghelper.cxx b/sfx2/source/dialog/filedlghelper.cxx
index c9ab00c..a927cfe 100644
--- a/sfx2/source/dialog/filedlghelper.cxx
+++ b/sfx2/source/dialog/filedlghelper.cxx
@@ -1769,6 +1769,9 @@ void FileDialogHelper_Impl::setFilter( const OUString& rFilter )
// ------------------------------------------------------------------------
void FileDialogHelper_Impl::createMatcher( const String& rFactory )
{
+ if (mbDeleteMatcher)
+ delete mpMatcher;
+
mpMatcher = new SfxFilterMatcher( SfxObjectShell::GetServiceNameFromFactory(rFactory) );
mbDeleteMatcher = sal_True;
}
@@ -1783,6 +1786,9 @@ void FileDialogHelper_Impl::addFilters( const String& rFactory,
if ( ! xFltMgr.is() )
return;
+ if (mbDeleteMatcher)
+ delete mpMatcher;
+
// we still need a matcher to convert UI names to filter names
if ( !rFactory.Len() )
{
More information about the Libreoffice-commits
mailing list