You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by ti...@apache.org on 2015/11/22 15:58:21 UTC

svn commit: r1715631 - /pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/cos/COSNumber.java

Author: tilman
Date: Sun Nov 22 14:58:21 2015
New Revision: 1715631

URL: http://svn.apache.org/viewvc?rev=1715631&view=rev
Log:
PDFBOX-3116: try returning a float if an integer is very large

Modified:
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/cos/COSNumber.java

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/cos/COSNumber.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/cos/COSNumber.java?rev=1715631&r1=1715630&r2=1715631&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/cos/COSNumber.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/cos/COSNumber.java Sun Nov 22 14:58:21 2015
@@ -106,7 +106,15 @@ public abstract class COSNumber extends
             }
             catch( NumberFormatException e )
             {
-                throw new IOException( "Value is not an integer: " + number, e );
+                // might be a huge number, see PDFBOX-3116
+                try
+                {
+                    return new COSFloat(number);
+                }
+                catch (NumberFormatException e2)
+                {
+                    throw new IOException("Not a number: " + number, e2);
+                }
             }
         } 
         else