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