summaryrefslogtreecommitdiff
path: root/drawinglayer/source
diff options
context:
space:
mode:
authorNoel Grandin <noelgrandin@collabora.co.uk>2024-07-17 10:53:46 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2024-07-17 12:49:36 +0200
commitb7b1013fa7ce85090763565426d10cb6435e4a53 (patch)
tree4b718c424530dded8be64536371e5051f97e5afb /drawinglayer/source
parent97b827aa6135fa95235742122d49222b3c1b9109 (diff)
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.grandin@collabora.co.uk>
Diffstat (limited to 'drawinglayer/source')
-rw-r--r--drawinglayer/source/primitive2d/graphicprimitivehelper2d.cxx4
1 files changed, 3 insertions, 1 deletions
diff --git a/drawinglayer/source/primitive2d/graphicprimitivehelper2d.cxx b/drawinglayer/source/primitive2d/graphicprimitivehelper2d.cxx
index 81555bee9fb1..d4d660228565 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