You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by ce...@apache.org on 2018/04/04 19:40:54 UTC
svn commit: r1828375 - in /poi/trunk:
src/integrationtest/org/apache/poi/stress/ src/java/org/apache/poi/sl/draw/
test-data/slideshow/
Author: centic
Date: Wed Apr 4 19:40:54 2018
New Revision: 1828375
URL: http://svn.apache.org/viewvc?rev=1828375&view=rev
Log:
Try to avoid one NPE that popped up in commoncrawl-corpus tests
Added:
poi/trunk/test-data/slideshow/ca.ubc.cs.people_~emhill_presentations_HowWeRefactor.pptx (with props)
Modified:
poi/trunk/src/integrationtest/org/apache/poi/stress/XSLFFileHandler.java
poi/trunk/src/java/org/apache/poi/sl/draw/DrawShape.java
poi/trunk/src/java/org/apache/poi/sl/draw/DrawSimpleShape.java
poi/trunk/src/java/org/apache/poi/sl/draw/DrawTextShape.java
Modified: poi/trunk/src/integrationtest/org/apache/poi/stress/XSLFFileHandler.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/integrationtest/org/apache/poi/stress/XSLFFileHandler.java?rev=1828375&r1=1828374&r2=1828375&view=diff
==============================================================================
--- poi/trunk/src/integrationtest/org/apache/poi/stress/XSLFFileHandler.java (original)
+++ poi/trunk/src/integrationtest/org/apache/poi/stress/XSLFFileHandler.java Wed Apr 4 19:40:54 2018
@@ -66,7 +66,7 @@ public class XSLFFileHandler extends Sli
@Override
@Test
public void test() throws Exception {
- File file = new File("test-data/slideshow/ae.ac.uaeu.faculty_nafaachbili_GeomLec1.pptx");
+ File file = new File("test-data/slideshow/ca.ubc.cs.people_~emhill_presentations_HowWeRefactor.pptx");
try (InputStream stream = new FileInputStream(file)) {
handleFile(stream, file.getPath());
}
Modified: poi/trunk/src/java/org/apache/poi/sl/draw/DrawShape.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/sl/draw/DrawShape.java?rev=1828375&r1=1828374&r2=1828375&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/sl/draw/DrawShape.java (original)
+++ poi/trunk/src/java/org/apache/poi/sl/draw/DrawShape.java Wed Apr 4 19:40:54 2018
@@ -66,7 +66,15 @@ public class DrawShape implements Drawab
if (tx == null) {
tx = new AffineTransform();
}
- final Rectangle2D anchor = tx.createTransformedShape(ps.getAnchor()).getBounds2D();
+
+ // we saw one document failing here, probably the format is slightly broken, but
+ // maybe better to try to handle it more gracefully
+ java.awt.Shape transformedShape = tx.createTransformedShape(ps.getAnchor());
+ if(transformedShape == null) {
+ return;
+ }
+
+ final Rectangle2D anchor = transformedShape.getBounds2D();
char cmds[] = isHSLF ? new char[]{ 'h','v','r' } : new char[]{ 'r','h','v' };
for (char ch : cmds) {
@@ -184,7 +192,7 @@ public class DrawShape implements Drawab
}
AffineTransform tx = (AffineTransform)graphics.getRenderingHint(Drawable.GROUP_TRANSFORM);
- if(tx != null && !tx.isIdentity()) {
+ if(tx != null && !tx.isIdentity() && tx.createTransformedShape(anchor) != null) {
anchor = tx.createTransformedShape(anchor).getBounds2D();
}
return anchor;
Modified: poi/trunk/src/java/org/apache/poi/sl/draw/DrawSimpleShape.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/sl/draw/DrawSimpleShape.java?rev=1828375&r1=1828374&r2=1828375&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/sl/draw/DrawSimpleShape.java (original)
+++ poi/trunk/src/java/org/apache/poi/sl/draw/DrawSimpleShape.java Wed Apr 4 19:40:54 2018
@@ -405,6 +405,9 @@ public class DrawSimpleShape extends Dra
}
Rectangle2D anchor = getAnchor(graphics, sh);
+ if(anchor == null) {
+ return lst;
+ }
for (Path p : geom) {
double w = p.getW(), h = p.getH(), scaleX = Units.toPoints(1), scaleY = scaleX;
Modified: poi/trunk/src/java/org/apache/poi/sl/draw/DrawTextShape.java
URL: http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/sl/draw/DrawTextShape.java?rev=1828375&r1=1828374&r2=1828375&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/sl/draw/DrawTextShape.java (original)
+++ poi/trunk/src/java/org/apache/poi/sl/draw/DrawTextShape.java Wed Apr 4 19:40:54 2018
@@ -45,6 +45,10 @@ public class DrawTextShape extends DrawS
TextShape<?,?> s = getShape();
Rectangle2D anchor = DrawShape.getAnchor(graphics, s);
+ if(anchor == null) {
+ return;
+ }
+
Insets2D insets = s.getInsets();
double x = anchor.getX() + insets.left;
double y = anchor.getY();
Added: poi/trunk/test-data/slideshow/ca.ubc.cs.people_~emhill_presentations_HowWeRefactor.pptx
URL: http://svn.apache.org/viewvc/poi/trunk/test-data/slideshow/ca.ubc.cs.people_%7Eemhill_presentations_HowWeRefactor.pptx?rev=1828375&view=auto
==============================================================================
Binary files poi/trunk/test-data/slideshow/ca.ubc.cs.people_~emhill_presentations_HowWeRefactor.pptx (added) and poi/trunk/test-data/slideshow/ca.ubc.cs.people_~emhill_presentations_HowWeRefactor.pptx Wed Apr 4 19:40:54 2018 differ
Propchange: poi/trunk/test-data/slideshow/ca.ubc.cs.people_~emhill_presentations_HowWeRefactor.pptx
------------------------------------------------------------------------------
svn:executable = *
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org
For additional commands, e-mail: commits-help@poi.apache.org