You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Benedikt Ritter (JIRA)" <ji...@apache.org> on 2017/02/23 16:01:44 UTC
[jira] [Commented] (EMAIL-167) DataSourceClassPathResolver doesn't
close InputStream when resolving resources
[ https://issues.apache.org/jira/browse/EMAIL-167?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15880701#comment-15880701 ]
Benedikt Ritter commented on EMAIL-167:
---------------------------------------
[~lburja] I don't think this is related to Apache Commons Email. Created this ticket for the wrong Jira Project?
> DataSourceClassPathResolver doesn't close InputStream when resolving resources
> ------------------------------------------------------------------------------
>
> Key: EMAIL-167
> URL: https://issues.apache.org/jira/browse/EMAIL-167
> Project: Commons Email
> Issue Type: Bug
> Affects Versions: 1.4
> Reporter: Lucian Burja
>
> DataSourceClassPathResolver opens an InputStream (via .class.getResourceAsStream) to read a resource into a ByteArrayDataSource, but never closes it:
> {code}
> public DataSource resolve(final String resourceLocation, final boolean isLenient) throws IOException
> {
> ...
> final InputStream is = DataSourceClassPathResolver.class.getResourceAsStream(resourceName);
> if (is != null)
> {
> final ByteArrayDataSource ds = new ByteArrayDataSource(is, mimeType);
> // EMAIL-125: set the name of the DataSource to the normalized resource URL
> // similar to other DataSource implementations, e.g. FileDataSource, URLDataSource
> ds.setName(DataSourceClassPathResolver.class.getResource(resourceName).toString());
> result = ds;
> }
> {code}
> The 'is' variable above should be closed in a try ... finally
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)