Chris Cockayne created PDFBOX-4665:
--------------------------------------
Summary: PDImageXObject createFromFileByExtension does not close
FileInputStream in event of error
Key: PDFBOX-4665
URL: https://issues.apache.org/jira/browse/PDFBOX-4665
Project: PDFBox
Issue Type: Bug
Components: Utilities
Affects Versions: 2.0.17
Reporter: Chris Cockayne
if you pass a mislabelled jpeg image file to
PDImageXObject.createFromFileByExtension, e.g. a png image that is incorrectly
named foo.jpg, then the file is treated as a JPEG. A FileInputStream is opened
and JPEGFactory.createFromStream then (correctly) throws an IIOException.
However, the FileInputStream is not closed.
Suggested change:
*old*
if ("jpg".equals(ext) || "jpeg".equals(ext))
{
FileInputStream fis = new FileInputStream(file);
PDImageXObject imageXObject = JPEGFactory.createFromStream(doc, fis);
fis.close();
return imageXObject;
}
*new*
if ("jpg".equals(ext) || "jpeg".equals(ext))
{
FileInputStream fis = null;
try {
fis = new FileInputStream(file);
PDImageXObject imageXObject = JPEGFactory.createFromStream(doc, fis);
return imageXObject;
} finally {
IOUtils.closeQuietly(fis);
}
}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]