You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by le...@apache.org on 2014/01/05 17:14:12 UTC
svn commit: r1555550 - in
/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics:
color/PDIndexed.java xobject/PDJpeg.java
Author: lehmi
Date: Sun Jan 5 16:14:12 2014
New Revision: 1555550
URL: http://svn.apache.org/r1555550
Log:
PDFBOX-1820: close streams as proposed by Tilman Hausherr
Modified:
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDIndexed.java
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/xobject/PDJpeg.java
Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDIndexed.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDIndexed.java?rev=1555550&r1=1555549&r2=1555550&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDIndexed.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDIndexed.java Sun Jan 5 16:14:12 2014
@@ -31,6 +31,7 @@ import org.apache.pdfbox.cos.COSName;
import org.apache.pdfbox.cos.COSNumber;
import org.apache.pdfbox.cos.COSStream;
import org.apache.pdfbox.cos.COSString;
+import org.apache.pdfbox.io.IOUtils;
/**
* This class represents an Indexed color space.
@@ -260,6 +261,7 @@ public class PDIndexed extends PDColorSp
output.write(buffer, 0, amountRead);
}
lookupData = output.toByteArray();
+ IOUtils.closeQuietly(input);
}
else if (lookupTable == null)
{
Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/xobject/PDJpeg.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/xobject/PDJpeg.java?rev=1555550&r1=1555549&r2=1555550&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/xobject/PDJpeg.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/xobject/PDJpeg.java Sun Jan 5 16:14:12 2014
@@ -32,7 +32,6 @@ import java.io.IOException;
import java.io.OutputStream;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
-
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
@@ -45,7 +44,6 @@ import javax.imageio.stream.ImageInputSt
import org.apache.pdfbox.cos.COSDictionary;
import org.apache.pdfbox.cos.COSName;
-
import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.pdmodel.common.PDStream;
import org.apache.pdfbox.pdmodel.common.function.PDFunction;
@@ -65,7 +63,7 @@ import org.w3c.dom.NodeList;
* An image class for JPegs.
*
* @author mathiak
- * @version $Revision: 1.5 $
+ *
*/
public class PDJpeg extends PDXObjectImage
{
@@ -351,7 +349,6 @@ public class PDJpeg extends PDXObjectIma
Iterator<ImageReader> readers = ImageIO.getImageReaders(input);
if (readers == null || !readers.hasNext())
{
- input.close();
throw new RuntimeException("No ImageReaders found");
}
reader = (ImageReader) readers.next();
@@ -388,6 +385,17 @@ public class PDJpeg extends PDXObjectIma
}
finally
{
+ try
+ {
+ if (input != null)
+ {
+ input.close();
+ }
+ }
+ catch (IOException exception)
+ {
+ // swallow the exception
+ }
if (reader != null)
{
reader.dispose();