Author: jahewson
Date: Wed Aug  5 23:15:39 2015
New Revision: 1694365

URL: http://svn.apache.org/r1694365
Log:
PDFBOX-2893: read stream before writing it

Modified:
    
pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/WriteDecodedDoc.java

Modified: 
pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/WriteDecodedDoc.java
URL: 
http://svn.apache.org/viewvc/pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/WriteDecodedDoc.java?rev=1694365&r1=1694364&r2=1694365&view=diff
==============================================================================
--- 
pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/WriteDecodedDoc.java 
(original)
+++ 
pdfbox/trunk/tools/src/main/java/org/apache/pdfbox/tools/WriteDecodedDoc.java 
Wed Aug  5 23:15:39 2015
@@ -24,8 +24,8 @@ import org.apache.pdfbox.cos.COSBase;
 import org.apache.pdfbox.cos.COSName;
 import org.apache.pdfbox.cos.COSObject;
 import org.apache.pdfbox.cos.COSStream;
-import org.apache.pdfbox.io.IOUtils;
 import org.apache.pdfbox.pdmodel.PDDocument;
+import org.apache.pdfbox.pdmodel.common.PDStream;
 
 /**
  * load document and write with all streams decoded.
@@ -68,9 +68,10 @@ public class WriteDecodedDoc
                 if (base instanceof COSStream)
                 {
                     COSStream stream = (COSStream)base;
+                    byte[] bytes = new PDStream(stream).toByteArray();
                     stream.removeItem(COSName.FILTER);
                     OutputStream streamOut = stream.createOutputStream();
-                    IOUtils.copy(stream.createInputStream(), streamOut);
+                    streamOut.write(bytes);
                     streamOut.close();
                 }
             }


Reply via email to