Author: leleueri
Date: Sat Dec 22 15:56:19 2012
New Revision: 1425302

URL: http://svn.apache.org/viewvc?rev=1425302&view=rev
Log:
[https://issues.apache.org/jira/browse/PDFBOX-1465] Manage objects that have an 
Offset set to 0 in the XRefTrailer 

Modified:
    
pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/PreflightConstants.java
    
pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/parser/PreflightParser.java

Modified: 
pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/PreflightConstants.java
URL: 
http://svn.apache.org/viewvc/pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/PreflightConstants.java?rev=1425302&r1=1425301&r2=1425302&view=diff
==============================================================================
--- 
pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/PreflightConstants.java
 (original)
+++ 
pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/PreflightConstants.java
 Sat Dec 22 15:56:19 2012
@@ -351,6 +351,10 @@ public interface PreflightConstants {
         * An object is missing from the document
         */
        String ERROR_SYNTAX_MISSING_OFFSET = "1.0.13";
+       /**
+        * An object has an invalid offset
+        */
+       String ERROR_SYNTAX_INVALID_OFFSET = "1.0.14";
 
        String ERROR_SYNTAX_HEADER = "1.1";
        

Modified: 
pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/parser/PreflightParser.java
URL: 
http://svn.apache.org/viewvc/pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/parser/PreflightParser.java?rev=1425302&r1=1425301&r2=1425302&view=diff
==============================================================================
--- 
pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/parser/PreflightParser.java
 (original)
+++ 
pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/parser/PreflightParser.java
 Sat Dec 22 15:56:19 2012
@@ -562,6 +562,8 @@ public class PreflightParser extends Non
                        if ( offsetOrObjstmObNr == null )       {
                                // not defined object -> NULL object (Spec. 
1.7, chap. 3.2.9)
                                pdfObject.setObject( COSNull.NULL );
+                       } else if ( offsetOrObjstmObNr == 0 )   {
+                               addValidationError(new 
ValidationError(ERROR_SYNTAX_INVALID_OFFSET, "Object {" +        
objKey.getNumber() + ":" + objKey.getGeneration()+"} has an offset of 0"));
                        }       else if ( offsetOrObjstmObNr > 0 )      {
                                // offset of indirect object in file
                                // ---- go to object start


Reply via email to