File bsc1182970.patch of Package libreoffice.19067

From ff751d42a4f672e25188ba90958e91d7869f395a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?G=C3=BCl=C5=9Fah=20K=C3=B6se?= <gulsah.kose@collabora.com>
Date: Mon, 22 Mar 2021 23:39:17 +0300
Subject: [PATCH] tdf#140714 Import graphics cropped into custom geometry as
 custom shapes.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Change-Id: I2054d24ce41c9f0d6cc1675f461274067c3b2898
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112943
Tested-by: Jenkins
Reviewed-by: Jan Holesovsky <kendy@collabora.com>
Reviewed-by: Gülşah Köse <gulsah.kose@collabora.com>
(cherry picked from commit db39b68c3c85531744ddeb8105b3ddb9b2dab099)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112811
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
---
 oox/source/drawingml/shape.cxx      |   6 ++++--
 sd/qa/unit/data/pptx/tdf140714.pptx | Bin 0 -> 28384 bytes
 sd/qa/unit/export-tests.cxx         |  16 ++++++++++++++++
 3 files changed, 20 insertions(+), 2 deletions(-)
 create mode 100644 sd/qa/unit/data/pptx/tdf140714.pptx

diff --git a/oox/source/drawingml/shape.cxx b/oox/source/drawingml/shape.cxx
index 5f3204bf64f2..ffa7fb017aca 100644
--- a/oox/source/drawingml/shape.cxx
+++ b/oox/source/drawingml/shape.cxx
@@ -722,8 +722,10 @@ Reference< XShape > const & Shape::createAndInsert(
     }
     // Use custom shape instead of GraphicObjectShape if the image is cropped to
     // shape. Except rectangle, which does not require further cropping
-    bool bIsCroppedGraphic = (aServiceName == "com.sun.star.drawing.GraphicObjectShape" && mpCustomShapePropertiesPtr->getShapePresetType() >= 0
-            && mpCustomShapePropertiesPtr->getShapePresetType() != XML_Rect && mpCustomShapePropertiesPtr->getShapePresetType() != XML_rect);
+    bool bIsCroppedGraphic = (aServiceName == "com.sun.star.drawing.GraphicObjectShape" &&
+                              (mpCustomShapePropertiesPtr->getShapePresetType() >= 0 || mpCustomShapePropertiesPtr->getPath2DList().size() > 0) &&
+                              mpCustomShapePropertiesPtr->getShapePresetType() != XML_Rect &&
+                              mpCustomShapePropertiesPtr->getShapePresetType() != XML_rect);
     bool bIsCustomShape = ( aServiceName == "com.sun.star.drawing.CustomShape" ||
                             aServiceName == "com.sun.star.drawing.ConnectorShape" ||
                             bIsCroppedGraphic);
openSUSE Build Service is sponsored by