summaryrefslogtreecommitdiff
path: root/drawinglayer
diff options
context:
space:
mode:
authorCaolán McNamara <caolan.mcnamara@collabora.com>2023-07-27 10:30:35 +0100
committerCaolán McNamara <caolan.mcnamara@collabora.com>2023-07-27 15:13:06 +0200
commite06456180ade61aa519819702810a3b9779a6e9e (patch)
tree0346b21c58d932c4b9b30b8c92ecf2fac0b1ac14 /drawinglayer
parentb73a8731c6f71a9a7cedc8e97afcd5a89b55cfe9 (diff)
crashtesting: crash on export of forum-en-41439.odp to pdf
and various others. since: commit 81994cb2b8b32453a92bcb011830fcb884f22ff3 Date: Fri Apr 16 20:33:10 2021 +0200 Convert internal vcl bitmap formats transparency->alpha (II) changed drawinglayer/source/tools/converters.cxx convertToBitmapEx return BitmapEx(aRetval, aAlpha); if (aAlpha.hasAlpha()) return BitmapEx(aRetval, aAlpha); else return BitmapEx(aRetval); and SoftEdgePrimitive2D::create2DDecomposition assumes a mask exists. Presumably no mask -> fully opaque -> do nothing is the right outcome here. Change-Id: I7379c55c822c149a4320509d27a159cf5a07cc09 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154985 Tested-by: Jenkins Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com> Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Diffstat (limited to 'drawinglayer')
-rw-r--r--drawinglayer/source/primitive2d/softedgeprimitive2d.cxx2
1 files changed, 2 insertions, 0 deletions
diff --git a/drawinglayer/source/primitive2d/softedgeprimitive2d.cxx b/drawinglayer/source/primitive2d/softedgeprimitive2d.cxx
index ecf4e48338d6..27e265ab1ae1 100644
--- a/drawinglayer/source/primitive2d/softedgeprimitive2d.cxx
+++ b/drawinglayer/source/primitive2d/softedgeprimitive2d.cxx
@@ -197,6 +197,8 @@ void SoftEdgePrimitive2D::create2DDecomposition(
// Get the Alpha and use as base to blur and apply the effect
AlphaMask aMask(aBitmapEx.GetAlphaMask());
+ if (aMask.IsEmpty()) // There is no mask, fully opaque
+ break;
const AlphaMask blurMask(drawinglayer::primitive2d::ProcessAndBlurAlphaMask(
aMask, -fDiscreteSoftRadius * fScale, fDiscreteSoftRadius * fScale, 0));
aMask.BlendWith(blurMask);