[Libreoffice-commits] core.git: sd/source

Caolán McNamara caolanm at redhat.com
Fri Sep 18 07:31:31 PDT 2015


 sd/source/core/stlsheet.cxx |    3 +++
 1 file changed, 3 insertions(+)

New commits:
commit 217a22188274221035aec988eccea5e5c9768921
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Fri Sep 18 14:40:24 2015 +0100

    valgrind, leak in SdStyleSheet
    
    this is presumably a regression from
    
    commit 8904bf48e0cb4d5d0890684ce82dc2ff3252e41f
    Author: Michael Stahl <mstahl at redhat.com>
    Date:   Tue Jul 7 23:57:07 2015 +0200
    
        sd: dispose SdStyleSheet properly
    
        If it's disposed during document destruction it still retained pointers
        to SfxItemSet and SfxStyleSheetBasePool.
    
    where it was always deleted in the dtor, but now
    is optional in ::dispose
    
    lets set bMySet to true when pSet is created like sc does, rather
    try going to an unconditional delete in ::dispose
    
    Change-Id: I214675805e513f657e51c779758106194f6d14e3

diff --git a/sd/source/core/stlsheet.cxx b/sd/source/core/stlsheet.cxx
index fb0fd7f..bc1e296 100644
--- a/sd/source/core/stlsheet.cxx
+++ b/sd/source/core/stlsheet.cxx
@@ -245,6 +245,7 @@ SfxItemSet& SdStyleSheet::GetItemSet()
                                         0, 0 };
 
             pSet = new SfxItemSet(GetPool().GetPool(), nWhichPairTable);
+            bMySet = true;
         }
 
         return *pSet;
@@ -270,6 +271,7 @@ SfxItemSet& SdStyleSheet::GetItemSet()
                                         0, 0 };
 
             pSet = new SfxItemSet(GetPool().GetPool(), nWhichPairTable);
+            bMySet = true;
         }
 
         return *pSet;
@@ -309,6 +311,7 @@ SfxItemSet& SdStyleSheet::GetItemSet()
                                              0, 0 };
 
                 pSet = new SfxItemSet(GetPool().GetPool(), nWhichPairTable);
+                bMySet = true;
             }
 
             return(*pSet);


More information about the Libreoffice-commits mailing list