[
https://issues.apache.org/jira/browse/PDFBOX-4665?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Chris Cockayne updated PDFBOX-4665:
-----------------------------------
Component/s: (was: Utilities)
PDModel
> 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: PDModel
> Affects Versions: 2.0.17
> Reporter: Chris Cockayne
> Priority: Minor
>
> 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]