This is an automated email from the ASF dual-hosted git repository. ggregory pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-email.git
The following commit(s) were added to refs/heads/master by this push: new d251d20 DataSourceUrlResolver.resolve(String, boolean) leaks InputStreams d251d20 is described below commit d251d20682266e35935ba7c8222a01dcec598d97 Author: Gary Gregory <garydgreg...@gmail.com> AuthorDate: Sat Dec 16 11:34:34 2023 -0500 DataSourceUrlResolver.resolve(String, boolean) leaks InputStreams --- src/changes/changes.xml | 1 + .../org/apache/commons/mail/resolver/DataSourceUrlResolver.java | 6 +++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/changes/changes.xml b/src/changes/changes.xml index 9b09138..baaf786 100644 --- a/src/changes/changes.xml +++ b/src/changes/changes.xml @@ -40,6 +40,7 @@ <action dev="ggregory" type="fix" due-to="Loki-Afro, Gary Gregory">Migrate to JUnit 5 #186.</action> <action issue="EMAIL-174" type="fix" due-to="Vegard Stuen">Bump javax.mail dependency to 1.6.1, so that i18n is supported for email addresses.</action> <action dev="ggregory" type="fix" due-to="Loki-Afro, Gary Gregory">Add missing getters and setters in EMail and subclasses; deprecate access to protected instance variables.</action> + <action dev="ggregory" type="fix" due-to="Gary Gregory">DataSourceUrlResolver.resolve(String, boolean) leaks InputStreams.</action> <!-- ADD --> <action type="add" due-to="Dependabot" dev="ggregory">Add github/codeql-action #75.</action> <action type="add" due-to="Gary Gregory" dev="ggregory">Add Maven plugin JapiCmp and remove Clirr.</action> diff --git a/src/main/java/org/apache/commons/mail/resolver/DataSourceUrlResolver.java b/src/main/java/org/apache/commons/mail/resolver/DataSourceUrlResolver.java index c572946..f9f1d04 100644 --- a/src/main/java/org/apache/commons/mail/resolver/DataSourceUrlResolver.java +++ b/src/main/java/org/apache/commons/mail/resolver/DataSourceUrlResolver.java @@ -17,6 +17,7 @@ package org.apache.commons.mail.resolver; import java.io.IOException; +import java.io.InputStream; import java.net.MalformedURLException; import java.net.URL; @@ -99,7 +100,10 @@ public class DataSourceUrlResolver extends DataSourceBaseResolver { try { if (!isCid(resourceLocation)) { result = new URLDataSource(createUrl(resourceLocation)); - result.getInputStream(); + // validate we can read. + try (InputStream inputStream = result.getInputStream()) { + inputStream.read(); + } } return result; } catch (final IOException e) {