You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pdfbox.apache.org by "Cornelis Hoeflake (JIRA)" <ji...@apache.org> on 2014/10/13 09:44:33 UTC

[jira] [Comment Edited] (PDFBOX-2422) PDFont.getStringWidth results in stackoverflow

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

Cornelis Hoeflake edited comment on PDFBOX-2422 at 10/13/14 7:43 AM:
---------------------------------------------------------------------

I've updated to the latest code, currently GIT commit a978b29a29629cc461b68f80bd180367e71f980f (12 october 2014). Note that it only occurs when the string contains a special character.

Part of the trace:
java.lang.StackOverflowError
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:380)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
... and so on


was (Author: c.hoeflake):
I've updated to the latest code, currently GIT commit a978b29a29629cc461b68f80bd180367e71f980f (12 october 2014). Note that it only occurs when the string contains a special character.

Part of the trace:
java.lang.StackOverflowError
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:380)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
	at org.apache.pdfbox.pdmodel.font.PDFont.isSymbolic(PDFont.java:382)
	at org.apache.pdfbox.pdmodel.font.PDFont.isStandard14(PDFont.java:505)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isStandard14(PDSimpleFont.java:338)
	at org.apache.pdfbox.pdmodel.font.PDSimpleFont.isFontSymbolic(PDSimpleFont.java:182)
... and so on

> PDFont.getStringWidth results in stackoverflow
> ----------------------------------------------
>
>                 Key: PDFBOX-2422
>                 URL: https://issues.apache.org/jira/browse/PDFBOX-2422
>             Project: PDFBox
>          Issue Type: Bug
>    Affects Versions: 2.0.0
>            Reporter: Cornelis Hoeflake
>            Assignee: John Hewson
>             Fix For: 2.0.0
>
>
> When loading a true type font and calling getStringWidth("é") will result in a stackoverflow. Calling the method with a 'regular' character is ok.
> {code:title=Example code}
> PDDocument doc = new PDDocument();
> // load a font which is in PDFBox
> PDTrueTypeFont font = PDTrueTypeFont.loadTTF(doc, getClass().getResourceAsStream("/org/apache/pdfbox/resources/ttf/LiberationSans-Regular.ttf"));
> font.getStringWidth("éé");
> {code}



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