From: <asa...@us...> - 2013-10-10 09:43:37
|
Revision: 8640 http://sourceforge.net/p/htmlunit/code/8640 Author: asashour Date: 2013-10-10 09:43:34 +0000 (Thu, 10 Oct 2013) Log Message: ----------- HtmlImage: close imageReader in finalize(). Issue 1541 Modified Paths: -------------- trunk/htmlunit/src/changes/changes.xml trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/html/HtmlImage.java Modified: trunk/htmlunit/src/changes/changes.xml =================================================================== --- trunk/htmlunit/src/changes/changes.xml 2013-10-10 06:58:51 UTC (rev 8639) +++ trunk/htmlunit/src/changes/changes.xml 2013-10-10 09:43:34 UTC (rev 8640) @@ -8,6 +8,9 @@ <body> <release version="2.13" date="???" description="Bugfixes"> + <action type="update" dev="asashour" issue="1541"> + HtmlImage: close imageReader in finalize(). + </action> <action type="update" dev="mguillem"> Upgrade NekoHtml to 1.9.19. </action> Modified: trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/html/HtmlImage.java =================================================================== --- trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/html/HtmlImage.java 2013-10-10 06:58:51 UTC (rev 8639) +++ trunk/htmlunit/src/main/java/com/gargoylesoftware/htmlunit/html/HtmlImage.java 2013-10-10 09:43:34 UTC (rev 8640) @@ -489,4 +489,24 @@ final ImageReader reader = getImageReader(); ImageIO.write(reader.read(0), reader.getFormatName(), file); } + + /** + * {@inheritDoc} + */ + @Override + protected void finalize() { + if (imageReader_ != null) { + try { + final ImageInputStream stream = (ImageInputStream) imageReader_.getInput(); + if (stream != null) { + stream.close(); + } + imageReader_.setInput(null); + imageReader_.dispose(); + } + catch (final IOException e) { + LOG.error(e.getMessage() , e); + } + } + } } |