[ 
https://issues.apache.org/jira/browse/PDFBOX-2728?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14480986#comment-14480986
 ] 

John Hewson commented on PDFBOX-2728:
-------------------------------------

There's no need to actually change this, but the JVM does do some very 
sophisticated escape analysis, so it's worth thinking carefully about that when 
making assumptions about Java performance. It depends on the caller as to what 
the optimisation will be, but any case where a new object is created and used 
simply used to return fields which are immediately unpacked by the caller can 
be eliminated with escape analysis (i.e. the object will never be allocated, in 
this case the Point2D.Float is unlikely to be allocated - but I've not checked 
this!).

Not sure I agree about returning the base class being better - after all we 
wouldn't want all our APIs to return Object (not that that would be sensible).

> java.awt.geom.IllegalPathStateException: missing initial moveto in path 
> definition
> ----------------------------------------------------------------------------------
>
>                 Key: PDFBOX-2728
>                 URL: https://issues.apache.org/jira/browse/PDFBOX-2728
>             Project: PDFBox
>          Issue Type: Bug
>          Components: Rendering
>    Affects Versions: 2.0.0
>            Reporter: Massimo Franzoni
>            Assignee: Tilman Hausherr
>             Fix For: 2.0.0
>
>
> I get this exception :
> {code}
> java.awt.geom.IllegalPathStateException: missing initial moveto in path 
> definition
>       at java.awt.geom.Path2D$Float.needRoom(Path2D.java:280)
>       at java.awt.geom.Path2D.closePath(Path2D.java:1769)
>       at org.apache.pdfbox.rendering.PageDrawer.closePath(PageDrawer.java:693)
>       at 
> org.apache.pdfbox.contentstream.operator.graphics.ClosePath.process(ClosePath.java:35)
>       at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processOperator(PDFStreamEngine.java:788)
>       at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processStreamOperators(PDFStreamEngine.java:454)
>       at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processStream(PDFStreamEngine.java:425)
>       at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processStream(PDFStreamEngine.java:398)
>       at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processPage(PDFStreamEngine.java:164)
>       at org.apache.pdfbox.rendering.PageDrawer.drawPage(PageDrawer.java:164)
>       at 
> org.apache.pdfbox.rendering.PDFRenderer.renderPage(PDFRenderer.java:213)
> {code}
> similar to PDFBOX-2189.
> I can't include the PDF file for privacy reason but I think a similar 
> solution applied for the other bug could fix this problem too



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@pdfbox.apache.org
For additional commands, e-mail: dev-h...@pdfbox.apache.org

Reply via email to