drawinglayer/source/primitive2d/graphicprimitivehelper2d.cxx |    4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

New commits:
commit e0dec49500194390c37e8513de37dd305c26e9c4
Author:     Noel Grandin <noelgran...@collabora.co.uk>
AuthorDate: Wed Jul 17 10:53:46 2024 +0200
Commit:     Michael Weghorn <m.wegh...@posteo.de>
CommitDate: Thu Jul 18 07:43:06 2024 +0200

    fix skia crash (tdf#160646 related)
    
    while testing the document attached to this bug I get a repeatable
    skia crash (only skia is in native mode, not software rendering).
    
    This reveals that there a couple of data structures that need to
    be cleaned up while holding the SolarMutex.
    
    Change-Id: I3ff460a4febf1ffcb27ad904224e1594ead4aa3d
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170612
    Tested-by: Jenkins
    Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk>
    (cherry picked from commit b7b1013fa7ce85090763565426d10cb6435e4a53)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/170648
    Reviewed-by: Michael Weghorn <m.wegh...@posteo.de>

diff --git a/drawinglayer/source/primitive2d/graphicprimitivehelper2d.cxx 
b/drawinglayer/source/primitive2d/graphicprimitivehelper2d.cxx
index e0c68c0c1f34..7852b6cffa9e 100644
--- a/drawinglayer/source/primitive2d/graphicprimitivehelper2d.cxx
+++ b/drawinglayer/source/primitive2d/graphicprimitivehelper2d.cxx
@@ -60,7 +60,7 @@ namespace drawinglayer::primitive2d
                 an instance of Graphic is used here since it's ref-counted
                 and thus a safe copy for now
              */
-            const Graphic                               maGraphic;
+            Graphic                                     maGraphic;
 
             /// local animation processing data, excerpt from maGraphic
             ::Animation                                 maAnimation;
@@ -441,6 +441,8 @@ namespace drawinglayer::primitive2d
 
             maVirtualDevice.disposeAndClear();
             maVirtualDeviceMask.disposeAndClear();
+            maAnimation.Clear();
+            maGraphic.Clear();
         }
 
         bool AnimatedGraphicPrimitive2D::operator==(const BasePrimitive2D& 
rPrimitive) const

Reply via email to