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/03/14 12:41:29 UTC
svn commit: r1666655 -
/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/encryption/SecurityHandler.java
Author: tilman
Date: Sat Mar 14 11:41:29 2015
New Revision: 1666655
URL: http://svn.apache.org/r1666655
Log:
PDFBOX-2576: rewrite weird loop
Modified:
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/encryption/SecurityHandler.java
Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/encryption/SecurityHandler.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/encryption/SecurityHandler.java?rev=1666655&r1=1666654&r2=1666655&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/encryption/SecurityHandler.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/encryption/SecurityHandler.java Sat Mar 14 11:41:29 2015
@@ -235,9 +235,10 @@ public abstract class SecurityHandler
IvParameterSpec ips = new IvParameterSpec(iv);
decryptCipher.init(decrypt ? Cipher.DECRYPT_MODE : Cipher.ENCRYPT_MODE, aesKey, ips);
byte[] buffer = new byte[256];
- for (int n = 0; -1 != (n = data.read(buffer));)
+ int n;
+ while ((n = data.read(buffer)) != -1)
{
- output.write(decryptCipher.update(buffer,0, n ));
+ output.write(decryptCipher.update(buffer, 0, n));
}
output.write(decryptCipher.doFinal());
}
@@ -421,8 +422,9 @@ public abstract class SecurityHandler
{
// if we are a signature dictionary and contain a Contents entry then
// we don't decrypt it.
- if (!(entry.getKey().equals(COSName.CONTENTS) && value instanceof COSString && potentialSignatures
- .contains(dictionary)))
+ if (!(entry.getKey().equals(COSName.CONTENTS)
+ && value instanceof COSString
+ && potentialSignatures.contains(dictionary)))
{
decrypt(value, objNum, genNum);
}