1
0
mirror of https://github.com/golang/go synced 2024-11-26 13:18:19 -07:00
go/src
Ian Lance Taylor c5cb4843e1 html/template: ignore untyped nil arguments to default escapers
CL 95215 changed text/template so that untyped nil arguments were no
longer ignored, but were instead passed to functions as expected.
This had an unexpected effect on html/template, where all data is
implicitly passed to functions: originally untyped nil arguments were
not passed and were thus effectively ignored, but after CL 95215 they
were passed and were printed, typically as an escaped version of "<nil>".

This CL restores some of the behavior of html/template by ignoring
untyped nil arguments passed implicitly to escaper functions.

While eliminating one change to html/template relative to earlier
releases, this unfortunately introduces a different one: originally
values of interface type with the value nil were printed as an escaped
version of "<nil>". With this CL they are ignored as though they were
untyped nil values. My judgement is that this is a less common case.
We'll see.

This CL adds some tests of typed and untyped nil values to
html/template and text/template to capture the current behavior.

Updates #18716
Fixes #25875

Change-Id: I5912983ca32b31ece29e929e72d503b54d7b0cac
Reviewed-on: https://go-review.googlesource.com/121815
Run-TryBot: Ian Lance Taylor <iant@golang.org>
Reviewed-by: Daniel Martí <mvdan@mvdan.cc>
Reviewed-by: Russ Cox <rsc@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
2018-07-09 21:54:35 +00:00
..
archive
bufio
builtin
bytes
cmd cmd/link/internal/sym: add sizeof tests 2018-07-09 19:59:32 +00:00
compress
container
context
crypto
database/sql
debug
encoding
errors
expvar
flag
fmt
go go/doc: update header rules 2018-07-06 18:40:55 +00:00
hash
html html/template: ignore untyped nil arguments to default escapers 2018-07-09 21:54:35 +00:00
image all: clean up some Deprecated comments 2018-07-06 17:40:56 +00:00
index/suffixarray
internal
io
log
math
mime
net net/http: add support for SameSite option in http.Cookie 2018-07-09 19:58:29 +00:00
os os: increase directory reading block size on Unix systems 2018-07-06 22:39:14 +00:00
path
plugin
reflect
regexp regexp: revert "use sync.Pool to cache regexp.machine objects" 2018-07-09 15:12:53 +00:00
runtime runtime: only run TestMemStats sanity tests once 2018-07-09 17:48:35 +00:00
sort
strconv
strings strings: do much less redundant testing in TestCompareStrings 2018-07-02 14:39:29 +00:00
sync
syscall misc/wasm: use single map for string, symbol and object id mapping. 2018-07-03 20:45:17 +00:00
testing testing/cover: improve comments on CoverBlock 2018-07-01 08:07:47 +00:00
text html/template: ignore untyped nil arguments to default escapers 2018-07-09 21:54:35 +00:00
time
unicode
unsafe
vendor/golang_org/x vendor: update vendored x/net/http/httpproxy 2018-07-09 19:35:21 +00:00
all.bash
all.bat
all.rc
androidtest.bash
bootstrap.bash
buildall.bash
clean.bash
clean.bat
clean.rc
cmp.bash
iostest.bash
make.bash
make.bat
Make.dist
make.rc
naclmake.bash
nacltest.bash
race.bash
race.bat
run.bash
run.bat
run.rc