shithub: hugo

Download patch

ref: 046320d3f41e8331583da2ec896ca563eef6dbcb
parent: c38bfda43bde093aa5f3b3245e3d2de5190d1991
author: Bjørn Erik Pedersen <[email protected]>
date: Sun Nov 27 13:01:43 EST 2016

tpl: Fix params case issue with nested template funcs

Fixes #2740

--- a/tpl/template_ast_transformers.go
+++ b/tpl/template_ast_transformers.go
@@ -97,7 +97,10 @@
 				c.updateIdentsIfNeeded(an.Ident)
 			case *parse.VariableNode:
 				c.updateIdentsIfNeeded(an.Ident)
+			case *parse.PipeNode:
+				c.paramsKeysToLower(an)
 			}
+
 		}
 	}
 }
--- a/tpl/template_ast_transformers_test.go
+++ b/tpl/template_ast_transformers_test.go
@@ -104,6 +104,12 @@
 {{ .NotParam }}
 {{ .NotParam }}
 {{ $notparam }}
+
+
+{{ $lower := .Site.Params.LOWER }}
+F1: {{ printf "themes/%s-theme" .Site.Params.LOWER }}
+F2: {{ Echo (printf "themes/%s-theme" $lower) }}
+F3: {{ Echo (printf "themes/%s-theme" .Site.Params.LOWER) }}
 `
 )
 
@@ -152,6 +158,12 @@
 	require.Contains(t, result, "RANGE: 3: P1L")
 
 	require.Contains(t, result, "Hi There")
+
+	// Issue #2740
+	require.Contains(t, result, "F1: themes/P2L-theme")
+	require.Contains(t, result, "F2: themes/P2L-theme")
+	require.Contains(t, result, "F3: themes/P2L-theme")
+
 }
 
 func BenchmarkTemplateParamsKeysToLower(b *testing.B) {