http: write Header keys with empty values
R=golang-dev, rsc, r
CC=golang-dev
https://golang.org/cl/4630052
diff --git a/src/pkg/http/header.go b/src/pkg/http/header.go
index 95140b0..95a25a8 100644
--- a/src/pkg/http/header.go
+++ b/src/pkg/http/header.go
@@ -62,9 +62,6 @@
v = strings.Replace(v, "\n", " ", -1)
v = strings.Replace(v, "\r", " ", -1)
v = strings.TrimSpace(v)
- if v == "" {
- continue
- }
if _, err := fmt.Fprintf(w, "%s: %s\r\n", k, v); err != nil {
return err
}
diff --git a/src/pkg/http/header_test.go b/src/pkg/http/header_test.go
index 7e24cb0..ccdee8a 100644
--- a/src/pkg/http/header_test.go
+++ b/src/pkg/http/header_test.go
@@ -57,6 +57,16 @@
map[string]bool{"Content-Length": true, "Expires": true, "Content-Encoding": true},
"",
},
+ {
+ Header{
+ "Nil": nil,
+ "Empty": {},
+ "Blank": {""},
+ "Double-Blank": {"", ""},
+ },
+ nil,
+ "Blank: \r\nDouble-Blank: \r\nDouble-Blank: \r\n",
+ },
}
func TestHeaderWrite(t *testing.T) {