This is an automated email from the ASF dual-hosted git repository. ddekany pushed a commit to branch 3 in repository https://gitbox.apache.org/repos/asf/freemarker.git
commit 537281002e34762543a760d33f12619d010aa54f Author: ddekany <ddek...@apache.org> AuthorDate: Sun Jan 1 00:04:13 2023 +0100 Forward ported from 2.3-gae: Replace String with StringBuilder in ElementModel (PR #82) --- .../src/main/java/org/apache/freemarker/dom/ElementModel.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/freemarker-dom/src/main/java/org/apache/freemarker/dom/ElementModel.java b/freemarker-dom/src/main/java/org/apache/freemarker/dom/ElementModel.java index 99750977..318278a0 100644 --- a/freemarker-dom/src/main/java/org/apache/freemarker/dom/ElementModel.java +++ b/freemarker-dom/src/main/java/org/apache/freemarker/dom/ElementModel.java @@ -19,8 +19,6 @@ package org.apache.freemarker.dom; -import java.util.Collections; - import org.apache.freemarker.core.Environment; import org.apache.freemarker.core.Template; import org.apache.freemarker.core.TemplateException; @@ -34,6 +32,8 @@ import org.w3c.dom.Element; import org.w3c.dom.Node; import org.w3c.dom.NodeList; +import java.util.Collections; + class ElementModel extends NodeModel implements TemplateStringModel { public ElementModel(Element element) { @@ -126,7 +126,7 @@ class ElementModel extends NodeModel implements TemplateStringModel { @Override public String getAsString() throws TemplateException { NodeList nl = node.getChildNodes(); - String result = ""; + StringBuilder result = new StringBuilder(); for (int i = 0; i < nl.getLength(); i++) { Node child = nl.item(i); int nodeType = child.getNodeType(); @@ -137,10 +137,10 @@ class ElementModel extends NodeModel implements TemplateStringModel { + "\" has a child element named: " + child.getNodeName(); throw new TemplateException(msg); } else if (nodeType == Node.TEXT_NODE || nodeType == Node.CDATA_SECTION_NODE) { - result += child.getNodeValue(); + result.append(child.getNodeValue()); } } - return result; + return result.toString(); } @Override