Author: msahyoun
Date: Sat Oct 24 13:32:34 2020
New Revision: 1882808

URL: http://svn.apache.org/viewvc?rev=1882808&view=rev
Log:
PDFBOX-4985: use new Acroform access without applying fixes

Modified:
    
pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/AcroFormValidationProcess.java

Modified: 
pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/AcroFormValidationProcess.java
URL: 
http://svn.apache.org/viewvc/pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/AcroFormValidationProcess.java?rev=1882808&r1=1882807&r2=1882808&view=diff
==============================================================================
--- 
pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/AcroFormValidationProcess.java
 (original)
+++ 
pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/AcroFormValidationProcess.java
 Sat Oct 24 13:32:34 2020
@@ -55,17 +55,10 @@ public class AcroFormValidationProcess e
         PDDocumentCatalog catalog = ctx.getDocument().getDocumentCatalog();
         if (catalog != null)
         {
-            // PDFBOX-4985 regenerates appearnce streams for fields when doing 
a PD model
-            // access to the AcroForm and in turn sets a NeedAppearances flag 
to false
-            // do a low level check for the NeedAppearances flag
-            COSDictionary cosAcroForm = 
catalog.getCOSObject().getCOSDictionary(COSName.ACRO_FORM);
-            if (cosAcroForm != null) {
-                checkNeedAppearences(ctx, cosAcroForm);
-            } 
-
-            PDAcroForm acroForm = catalog.getAcroForm();
+            PDAcroForm acroForm = catalog.getAcroForm(false);
             if (acroForm != null)
             {
+                checkNeedAppearences(ctx, acroForm);
                 try
                 {
                     exploreFields(ctx, acroForm.getFields());
@@ -90,9 +83,9 @@ public class AcroFormValidationProcess e
      * @param ctx the preflight context.
      * @param acroForm the AcroForm.
      */
-    protected void checkNeedAppearences(PreflightContext ctx, COSDictionary 
cosAcroForm)
+    protected void checkNeedAppearences(PreflightContext ctx, PDAcroForm 
acroForm)
     {
-        if (cosAcroForm.getBoolean(COSName.NEED_APPEARANCES, false))
+        if (acroForm.getNeedAppearances())
         {
             addValidationError(ctx, new 
ValidationError(ERROR_SYNTAX_DICT_INVALID,
                     "NeedAppearance is present with the value \"true\""));


Reply via email to