diff --git a/changelog.html b/changelog.html
index ac03a63f00f7189031da13e486347d841c93496e..2ab93c39d73412210b467486f3fb47eec69a1a94 100644
--- a/changelog.html
+++ b/changelog.html
@@ -55,6 +55,9 @@ Upcoming changes
+ -
+ Reduced size of memory leak in render-on-demand functionality used e.g. in configuration pages.
+ (issue 16341)
-
Improved logging and error output from SSHD in Jenkins.
diff --git a/core/src/main/java/hudson/widgets/RenderOnDemandClosure.java b/core/src/main/java/hudson/widgets/RenderOnDemandClosure.java
index 13ebee6de4ae27e4a59b2e5db998ecb0346b5306..6591d3c22df0452e1daaa9654eb528582aaf6463 100644
--- a/core/src/main/java/hudson/widgets/RenderOnDemandClosure.java
+++ b/core/src/main/java/hudson/widgets/RenderOnDemandClosure.java
@@ -25,15 +25,12 @@ package hudson.widgets;
import hudson.Util;
import hudson.model.Descriptor;
-import hudson.model.DescriptorByNameOwner;
import hudson.util.IOException2;
import hudson.util.PackedMap;
import org.apache.commons.jelly.JellyContext;
import org.apache.commons.jelly.JellyTagException;
import org.apache.commons.jelly.Script;
-import org.kohsuke.stapler.Ancestor;
import org.kohsuke.stapler.HttpResponse;
-import org.kohsuke.stapler.Stapler;
import org.kohsuke.stapler.StaplerRequest;
import org.kohsuke.stapler.StaplerResponse;
import org.kohsuke.stapler.bind.JavaScriptMethod;
@@ -64,7 +61,7 @@ public class RenderOnDemandClosure {
private final Map
variables;
private final String currentDescriptorByNameUrl;
- private final Set adjuncts;
+ private final String[] adjuncts;
public RenderOnDemandClosure(JellyContext context, String attributesToCapture) {
List