1
0
mirror of https://github.com/golang/go synced 2024-11-21 22:04:39 -07:00

go/doc: use correct escaper for URL

Despite the name, URL escaping is for a small subpiece of the URL only.
This particular URL is being emitted in an <a href=""> tag and in that
context it should be HTML escaped, not URL escaped.

In addition to fixing a bug, this change cuts a dependency chain
from go/doc to net, clearing the way for use of cgo
(which imports go/doc) during the compilation of package net.

R=gri
CC=golang-dev
https://golang.org/cl/1960050
This commit is contained in:
Russ Cox 2010-08-25 11:00:38 -04:00
parent 218afb8fbd
commit b0729cdfe5

View File

@ -8,7 +8,6 @@ package doc
import (
"go/ast"
"http" // for URLEscape
"io"
"regexp"
"strings"
@ -227,7 +226,7 @@ func emphasize(w io.Writer, line []byte, words map[string]string, nice bool) {
// write match
if len(url) > 0 {
w.Write(html_a)
w.Write([]byte(http.URLEscape(url)))
template.HTMLEscape(w, []byte(url))
w.Write(html_aq)
}
if italics {