Repository: activemq-artemis Updated Branches: refs/heads/master 38df11d1d -> d3d7eb7db
ARTEMIS-1593 RemotingConnectionImpl leaks FileNameKey was holding a reference to PropertiesLoader.this due to its inner class definition, causing RemotingConnectionImpl to leak through a long chain of dependencies rooted in a PropertiesLoader's subclass property ie PropertiesLoaderModule::callbackHandler. FileNameKey is turned into a inner static class to break this hidden dependency. Project: http://git-wip-us.apache.org/repos/asf/activemq-artemis/repo Commit: http://git-wip-us.apache.org/repos/asf/activemq-artemis/commit/e360f85c Tree: http://git-wip-us.apache.org/repos/asf/activemq-artemis/tree/e360f85c Diff: http://git-wip-us.apache.org/repos/asf/activemq-artemis/diff/e360f85c Branch: refs/heads/master Commit: e360f85c1b06bcfcc0664e1123f9dc93484a21e0 Parents: 38df11d Author: Francesco Nigro <[email protected]> Authored: Tue Jan 9 15:12:44 2018 +0100 Committer: Michael Pearce <[email protected]> Committed: Tue Jan 9 15:26:11 2018 +0000 ---------------------------------------------------------------------- .../activemq/artemis/spi/core/security/jaas/PropertiesLoader.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/e360f85c/artemis-server/src/main/java/org/apache/activemq/artemis/spi/core/security/jaas/PropertiesLoader.java ---------------------------------------------------------------------- diff --git a/artemis-server/src/main/java/org/apache/activemq/artemis/spi/core/security/jaas/PropertiesLoader.java b/artemis-server/src/main/java/org/apache/activemq/artemis/spi/core/security/jaas/PropertiesLoader.java index 616bb82..8f3d7aa 100644 --- a/artemis-server/src/main/java/org/apache/activemq/artemis/spi/core/security/jaas/PropertiesLoader.java +++ b/artemis-server/src/main/java/org/apache/activemq/artemis/spi/core/security/jaas/PropertiesLoader.java @@ -56,7 +56,7 @@ public class PropertiesLoader { return Boolean.parseBoolean((String) options.get(name)); } - public class FileNameKey { + public static final class FileNameKey { final File file; final String absPath;
