aboutsummaryrefslogtreecommitdiff
path: root/src/text/template/exec.go
diff options
context:
space:
mode:
Diffstat (limited to 'src/text/template/exec.go')
-rw-r--r--src/text/template/exec.go6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/text/template/exec.go b/src/text/template/exec.go
index 1d04c2982f..120d010a19 100644
--- a/src/text/template/exec.go
+++ b/src/text/template/exec.go
@@ -7,6 +7,7 @@ package template
import (
"bytes"
"fmt"
+ "internal/fmtsort"
"io"
"reflect"
"runtime"
@@ -362,8 +363,9 @@ func (s *state) walkRange(dot reflect.Value, r *parse.RangeNode) {
if val.Len() == 0 {
break
}
- for _, key := range sortKeys(val.MapKeys()) {
- oneIteration(key, val.MapIndex(key))
+ om := fmtsort.Sort(val)
+ for i, key := range om.Key {
+ oneIteration(key, om.Value[i])
}
return
case reflect.Chan: