You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by fa...@apache.org on 2021/02/02 21:13:32 UTC
svn commit: r1886143 - in /poi/trunk: build.gradle
src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFSheet.java
src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFSheet.java
Author: fanningpj
Date: Tue Feb 2 21:13:32 2021
New Revision: 1886143
URL: http://svn.apache.org/viewvc?rev=1886143&view=rev
Log:
[bug-65120] PartAlreadyExistsException when creating cell comments (after some comments removed). Thanks to Raúl Wegmann
Modified:
poi/trunk/build.gradle
poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFSheet.java
poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFSheet.java
Modified: poi/trunk/build.gradle
URL: http://svn.apache.org/viewvc/poi/trunk/build.gradle?rev=1886143&r1=1886142&r2=1886143&view=diff
==============================================================================
--- poi/trunk/build.gradle (original)
+++ poi/trunk/build.gradle Tue Feb 2 21:13:32 2021
@@ -160,6 +160,7 @@ subprojects {
exclude '**/BaseTestCellUtil.class'
exclude '**/TestUnfixedBugs.class'
exclude '**/TestOneFile.class'
+ include '**/TestXSSFSheet.class'
// Exclude Test Suites
exclude '**/All*Tests.class'
Modified: poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFSheet.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFSheet.java?rev=1886143&r1=1886142&r2=1886143&view=diff
==============================================================================
--- poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFSheet.java (original)
+++ poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFSheet.java Tue Feb 2 21:13:32 2021
@@ -601,8 +601,8 @@ public class XSSFSheet extends POIXMLDoc
CTLegacyDrawing ctDrawing = getCTLegacyDrawing();
if(ctDrawing == null) {
if(autoCreate) {
- //drawingNumber = #drawings.size() + 1
- int drawingNumber = getPackagePart().getPackage().getPartsByContentType(XSSFRelation.VML_DRAWINGS.getContentType()).size() + 1;
+ int drawingNumber = getNextPartNumber(XSSFRelation.VML_DRAWINGS,
+ getPackagePart().getPackage().getPartsByContentType(XSSFRelation.VML_DRAWINGS.getContentType()).size());
RelationPart rp = createRelationship(XSSFRelation.VML_DRAWINGS, XSSFFactory.getInstance(), drawingNumber, false);
drawing = rp.getDocumentPart();
String relId = rp.getRelationship().getId();
Modified: poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFSheet.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFSheet.java?rev=1886143&r1=1886142&r2=1886143&view=diff
==============================================================================
--- poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFSheet.java (original)
+++ poi/trunk/src/ooxml/testcases/org/apache/poi/xssf/usermodel/TestXSSFSheet.java Tue Feb 2 21:13:32 2021
@@ -1887,7 +1887,7 @@ public final class TestXSSFSheet extends
*/
@Test
void testInsertCommentsToClonedSheet() throws IOException {
- try (Workbook wb = XSSFTestDataSamples.openSampleWorkbook("52425.xlsx")) {
+ try (Workbook wb = XSSFTestDataSamples.openSampleWorkbook("52425.xlsx")) {
CreationHelper helper = wb.getCreationHelper();
Sheet sheet2 = wb.createSheet("Sheet 2");
Sheet sheet3 = wb.cloneSheet(0);
@@ -1995,4 +1995,29 @@ public final class TestXSSFSheet extends
}
}
}
+
+ @Test
+ public void bug65120() throws IOException {
+ XSSFWorkbook wb = new XSSFWorkbook();
+ CreationHelper creationHelper = wb.getCreationHelper();
+
+ Sheet sheet1 = wb.createSheet();
+ Cell cell1 = sheet1.createRow(0).createCell(0);
+ Comment comment1 = sheet1.createDrawingPatriarch().createCellComment(creationHelper.createClientAnchor());
+ cell1.setCellComment(comment1);
+
+ Sheet sheet2 = wb.createSheet();
+ Cell cell2 = sheet2.createRow(0).createCell(0);
+ Comment comment2 = sheet2.createDrawingPatriarch().createCellComment(creationHelper.createClientAnchor());
+ cell2.setCellComment(comment2);
+
+ wb.removeSheetAt(0);
+
+ Sheet sheet3 = wb.createSheet();
+ Cell cell3 = sheet3.createRow(0).createCell(0);
+ Comment comment3 = sheet3.createDrawingPatriarch().createCellComment(creationHelper.createClientAnchor());
+ cell3.setCellComment(comment3);
+
+ wb.close();
+ }
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org
For additional commands, e-mail: commits-help@poi.apache.org