[ https://issues.apache.org/jira/browse/BATIK-1143?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16171645#comment-16171645 ]
Julien Gouesse commented on BATIK-1143: --------------------------------------- I use this factory to load SVG documents displayed in a graphical user interface based on Swing (client side) and in a renderer used with JasperReports to create reports (server side, headless). > SAXSVGDocumentFactory.createDocument(String uri) opens an input stream but > doesn't close it > ------------------------------------------------------------------------------------------- > > Key: BATIK-1143 > URL: https://issues.apache.org/jira/browse/BATIK-1143 > Project: Batik > Issue Type: Bug > Components: SVG DOM > Affects Versions: 1.7, 1.8, 1.6.1, 1.7.1 > Reporter: Julien Gouesse > Labels: easyfix, performance > > Batik opens an input stream here: > https://github.com/apache/batik/blob/trunk/batik-anim/src/main/java/org/apache/batik/anim/dom/SAXSVGDocumentFactory.java#L158 > This opened stream is no longer useful after the creation of the > SVGOMDocument instance, it could get closed somewhere, typically here: > https://github.com/apache/batik/blob/trunk/batik-anim/src/main/java/org/apache/batik/anim/dom/SAXSVGDocumentFactory.java#L208 > I would use a try-with-resource or at least a try finally block to do so. > This is what I do as a temporary workaround, I override this method in my > source code and it works. > As far as I know, SAXSVGDocumentFactory.createDocument(String uri) doesn't > open streams that don't need to be closed (see ByteArrayInputStream). Leaving > such streams open can lead to memory leaks and to run out of native resources > (file handles, connections, ...). -- This message was sent by Atlassian JIRA (v6.4.14#64029) --------------------------------------------------------------------- To unsubscribe, e-mail: batik-dev-unsubscr...@xmlgraphics.apache.org For additional commands, e-mail: batik-dev-h...@xmlgraphics.apache.org