[Libreoffice-commits] core.git: 2 commits - sc/source

Markus Mohrhard markus.mohrhard at googlemail.com
Fri May 9 23:19:50 PDT 2014


 sc/source/core/data/conditio.cxx  |    2 ++
 sc/source/filter/xml/xmlbodyi.cxx |    4 ++--
 2 files changed, 4 insertions(+), 2 deletions(-)

New commits:
commit f1fde869b47e5447f261d92ce386434d3d628d52
Author: Markus Mohrhard <markus.mohrhard at googlemail.com>
Date:   Sat May 10 08:13:39 2014 +0200

    Lsan: fix memory leak in xmlbodyi.cxx
    
    Change-Id: I6274abc6ca3c4452c968d0b2bb775d29fbc8971f

diff --git a/sc/source/filter/xml/xmlbodyi.cxx b/sc/source/filter/xml/xmlbodyi.cxx
index 1298a2a..56dba8c 100644
--- a/sc/source/filter/xml/xmlbodyi.cxx
+++ b/sc/source/filter/xml/xmlbodyi.cxx
@@ -235,8 +235,8 @@ void ScXMLBodyContext::EndElement()
     if (!bHadCalculationSettings)
     {
         // #111055#; set calculation settings defaults if there is no calculation settings element
-        SvXMLImportContext *pContext = new ScXMLCalculationSettingsContext( GetScImport(), XML_NAMESPACE_TABLE, GetXMLToken(XML_CALCULATION_SETTINGS), NULL );
-        pContext->EndElement();
+        ScXMLCalculationSettingsContext aContext( GetScImport(), XML_NAMESPACE_TABLE, GetXMLToken(XML_CALCULATION_SETTINGS), NULL );
+        aContext.EndElement();
     }
 
     ScXMLImport::MutexGuard aGuard(GetScImport());
commit 6b28f7d3bcc782f2f443ee6cb99f78f1c2c5bb97
Author: Markus Mohrhard <markus.mohrhard at googlemail.com>
Date:   Sat May 10 07:33:40 2014 +0200

    Lsan: fix memory leak in conditio.cxx
    
    My test file leaks 9MB during import with that.
    
    Change-Id: Ie7aba31878721ad8caef1e301a6b54a42a8c0c54

diff --git a/sc/source/core/data/conditio.cxx b/sc/source/core/data/conditio.cxx
index 551da4c..43dc94e 100644
--- a/sc/source/core/data/conditio.cxx
+++ b/sc/source/core/data/conditio.cxx
@@ -336,6 +336,7 @@ void ScConditionEntry::Compile( const OUString& rExpr1, const OUString& rExpr2,
 
         if ( !rExpr1.isEmpty() )
         {
+            delete pFormula1;
             aComp.SetGrammar( eGrammar1 );
             if ( mpDoc->IsImportingXML() && !bTextToReal )
             {
@@ -373,6 +374,7 @@ void ScConditionEntry::Compile( const OUString& rExpr1, const OUString& rExpr2,
 
         if ( !rExpr2.isEmpty() )
         {
+            delete pFormula2;
             aComp.SetGrammar( eGrammar2 );
             if ( mpDoc->IsImportingXML() && !bTextToReal )
             {


More information about the Libreoffice-commits mailing list