From d385b81da322b29a4d951a8a72f2d00e2fe9c84f Mon Sep 17 00:00:00 2001 From: Mike Kaganski Date: Wed, 19 Aug 2026 08:05:02 +0000 Subject: [PATCH] Avoid second call to CreateAlphaMask This is an expensive operation. Change-Id: I4ffd17de84d324dcb091905927d9ef7423fdb1c9 Signed-off-by: Mike Kaganski Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/9505 Tested-by: Jenkins CPCI Reviewed-by: Noel Grandin (cherry picked from commit 9e2d6727f27caa7663a18564f46bb4a90b3b87a3) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/209508 Reviewed-by: Xisco Fauli Tested-by: Xisco Fauli --- drawinglayer/source/primitive2d/graphicprimitivehelper2d.cxx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drawinglayer/source/primitive2d/graphicprimitivehelper2d.cxx b/drawinglayer/source/primitive2d/graphicprimitivehelper2d.cxx index 58b1a55ed84d..8356ea6aabac 100644 --- a/drawinglayer/source/primitive2d/graphicprimitivehelper2d.cxx +++ b/drawinglayer/source/primitive2d/graphicprimitivehelper2d.cxx @@ -349,7 +349,8 @@ namespace drawinglayer::primitive2d case Disposal::Previous: { maVirtualDevice->DrawBitmap(rAnimationFrame.maPositionPixel, rAnimationFrame.maBitmap); - Bitmap aExpandVisibilityMask(rAnimationFrame.maBitmap.CreateAlphaMask().GetBitmap(), rAnimationFrame.maBitmap.CreateAlphaMask()); + AlphaMask aAlphaMask(rAnimationFrame.maBitmap.CreateAlphaMask()); + Bitmap aExpandVisibilityMask(aAlphaMask.GetBitmap(), aAlphaMask); maVirtualDeviceMask->DrawBitmap(rAnimationFrame.maPositionPixel, aExpandVisibilityMask); break; }