From 43c57c26c26d85a0e083d40b92e98a0f5efb34a2 Mon Sep 17 00:00:00 2001 From: PJ Fanning Date: Wed, 26 Sep 2018 21:42:21 +0000 Subject: [PATCH] [bug-62736] Relations on XSLFPictureShape are removed unconditionally. Thanks to Mate Borcsok git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1842055 13f79535-47bb-0310-9956-ffa450edef68 --- .../apache/poi/xslf/usermodel/XSLFSheet.java | 17 +++- .../org/apache/poi/xslf/TestXSLFBugs.java | 81 ++++++++++++++++++ test-data/slideshow/bug62736.pptx | Bin 0 -> 50926 bytes 3 files changed, 96 insertions(+), 2 deletions(-) create mode 100644 test-data/slideshow/bug62736.pptx diff --git a/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFSheet.java b/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFSheet.java index 2dbc39bff4..cee875a831 100644 --- a/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFSheet.java +++ b/src/ooxml/java/org/apache/poi/xslf/usermodel/XSLFSheet.java @@ -692,10 +692,23 @@ implements XSLFShapeContainer, Sheet { /** * Helper method for sheet and group shapes * - * @param pictureShape the picture shapes whose relation is to be removed + * @param pictureShape the picture shapes whose relation is to be removed, + * only if there are no more relations on its sheet to that picture */ void removePictureRelation(XSLFPictureShape pictureShape) { - removeRelation(pictureShape.getBlipId()); + int numberOfRelations = 0; + String targetBlipId = pictureShape.getBlipId(); + for (XSLFShape shape : pictureShape.getSheet().getShapes()) { + if (shape instanceof XSLFPictureShape) { + XSLFPictureShape currentPictureShape = ((XSLFPictureShape) shape); + if (currentPictureShape.getBlipId().equals(targetBlipId)) { + numberOfRelations++; + } + } + } + if (numberOfRelations <= 1) { + removeRelation(pictureShape.getBlipId()); + } } diff --git a/src/ooxml/testcases/org/apache/poi/xslf/TestXSLFBugs.java b/src/ooxml/testcases/org/apache/poi/xslf/TestXSLFBugs.java index c594280654..48b0816993 100644 --- a/src/ooxml/testcases/org/apache/poi/xslf/TestXSLFBugs.java +++ b/src/ooxml/testcases/org/apache/poi/xslf/TestXSLFBugs.java @@ -93,6 +93,87 @@ import org.openxmlformats.schemas.presentationml.x2006.main.CTShape; public class TestXSLFBugs { private static final POIDataSamples slTests = POIDataSamples.getSlideShowInstance(); + @Test + public void bug62736() throws Exception { + XMLSlideShow ss1 = XSLFTestDataSamples.openSampleDocument("bug62736.pptx"); + + assertEquals(1, ss1.getSlides().size()); + + XSLFSlide slide0 = ss1.getSlides().get(0); + + assertEquals(slide0.getShapes().size(), 4); + + assertRelation(slide0, "/ppt/slides/slide1.xml", null); + assertRelation(slide0, "/ppt/slideLayouts/slideLayout1.xml", "rId1"); + assertRelation(slide0, "/ppt/media/image1.png", "rId2"); + assertEquals(slide0.getRelations().size(), 2); + + List pictures = new ArrayList<>(); + for (XSLFShape shape : slide0.getShapes()) { + if (shape instanceof XSLFPictureShape) { + pictures.add((XSLFPictureShape) shape); + } + } + + assertEquals(pictures.size(), 2); + assertEquals(pictures.get(0).getPictureData().getFileName(), "image1.png"); + assertEquals(pictures.get(1).getPictureData().getFileName(), "image1.png"); + // blipId is rId2 of both pictures + + // remove just the first picture + slide0.removeShape(pictures.get(0)); + + assertEquals(slide0.getShapes().size(), 3); + + assertRelation(slide0, "/ppt/slides/slide1.xml", null); + assertRelation(slide0, "/ppt/slideLayouts/slideLayout1.xml", "rId1"); + // the bug is that the following relation is gone + assertRelation(slide0, "/ppt/media/image1.png", "rId2"); + assertEquals(slide0.getRelations().size(), 2); + + // Save and re-load + XMLSlideShow ss2 = XSLFTestDataSamples.writeOutAndReadBack(ss1); + ss1.close(); + assertEquals(1, ss2.getSlides().size()); + + slide0 = ss2.getSlides().get(0); + + assertRelation(slide0, "/ppt/slides/slide1.xml", null); + assertRelation(slide0, "/ppt/slideLayouts/slideLayout1.xml", "rId1"); + assertRelation(slide0, "/ppt/media/image1.png", "rId2"); + assertEquals(slide0.getRelations().size(), 2); + + pictures.clear(); + for (XSLFShape shape : slide0.getShapes()) { + if (shape instanceof XSLFPictureShape) { + pictures.add((XSLFPictureShape) shape); + } + } + + assertEquals(pictures.size(), 1); + assertEquals(pictures.get(0).getPictureData().getFileName(), "image1.png"); + + slide0.removeShape(pictures.get(0)); + + assertEquals(slide0.getShapes().size(), 2); + + assertRelation(slide0, "/ppt/slides/slide1.xml", null); + assertRelation(slide0, "/ppt/slideLayouts/slideLayout1.xml", "rId1"); + assertNull(slide0.getRelationById("rId2")); + assertEquals(slide0.getRelations().size(), 1); + + // Save and re-load + XMLSlideShow ss3 = XSLFTestDataSamples.writeOutAndReadBack(ss2); + ss2.close(); + assertEquals(1, ss3.getSlides().size()); + + slide0 = ss3.getSlides().get(0); + + assertRelation(slide0, "/ppt/slides/slide1.xml", null); + assertRelation(slide0, "/ppt/slideLayouts/slideLayout1.xml", "rId1"); + assertEquals(slide0.getShapes().size(), 2); + ss3.close(); + } @Test public void bug61589() throws IOException { diff --git a/test-data/slideshow/bug62736.pptx b/test-data/slideshow/bug62736.pptx new file mode 100644 index 0000000000000000000000000000000000000000..5593bff217b1c2afb27a6925b4e7571045a653c5 GIT binary patch literal 50926 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