From cfec42e28b802bde699ef13b82f2f45206bcb306 Mon Sep 17 00:00:00 2001 From: Jon Date: Mon, 6 Sep 2021 09:20:06 +0200 Subject: [PATCH] Fix bug in TextparameterDefinition (#5704) TextParameterDefinition did not override getDefaultParameterValue() method and instead relied on the implementation in StringParameterDefinition. In most cases this wasn't a problem, but in some cases, for example when triggering build through buildWithParameters API without specifying the parameter, then the parameter object would be of the wrong type (StringParameterValue as opposed to TextParameterValue). This causes problems with visualization in parameters view as well as incorrect values when rebuild plugin is used. Change-Id: If4e11bdafcd94c9c83462983f384fa80ae2c4d9c --- core/src/main/java/hudson/model/TextParameterDefinition.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/core/src/main/java/hudson/model/TextParameterDefinition.java b/core/src/main/java/hudson/model/TextParameterDefinition.java index 598a8d4c8c..7730f1cd2a 100644 --- a/core/src/main/java/hudson/model/TextParameterDefinition.java +++ b/core/src/main/java/hudson/model/TextParameterDefinition.java @@ -58,6 +58,11 @@ public class TextParameterDefinition extends StringParameterDefinition { } } + @Override + public StringParameterValue getDefaultParameterValue() { + return new TextParameterValue(getName(), getDefaultValue(), getDescription()); + } + @Override public ParameterValue createValue(StaplerRequest req, JSONObject jo) { TextParameterValue value = req.bindJSON(TextParameterValue.class, jo);