Ensure the "else" part of a `#list` is evaluated in `Environment.visit()`.
diff --git a/src/main/java/freemarker/core/ListElseContainer.java b/src/main/java/freemarker/core/ListElseContainer.java
index 53aeee5..856e5b0 100644
--- a/src/main/java/freemarker/core/ListElseContainer.java
+++ b/src/main/java/freemarker/core/ListElseContainer.java
@@ -37,10 +37,10 @@
@Override
TemplateElement[] accept(Environment env) throws TemplateException, IOException {
- if (!listPart.acceptWithResult(env)) {
- return elsePart.accept(env);
+ if (listPart.acceptWithResult(env)) {
+ return null;
}
- return null;
+ return new TemplateElement[] { elsePart };
}
@Override