aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Griesemer <gri@golang.org>2012-02-21 18:12:37 -0800
committerRobert Griesemer <gri@golang.org>2012-02-21 18:12:37 -0800
commit7b22e4628296518691a8ce6e4e4065ff4aeb69d8 (patch)
tree9d72ee3702f3b4d8f200102b076e805c83cbc926
parent8542dc07643d048dd932673aeb99697017268b4f (diff)
downloadgo-7b22e4628296518691a8ce6e4e4065ff4aeb69d8.tar.gz
go-7b22e4628296518691a8ce6e4e4065ff4aeb69d8.zip
godoc: fix absolute->relative mapping
Fixes #3096. R=golang-dev, dsymonds CC=golang-dev https://golang.org/cl/5690063
-rw-r--r--src/cmd/godoc/mapping.go3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/cmd/godoc/mapping.go b/src/cmd/godoc/mapping.go
index 89e531e2f3..1a0da15bfc 100644
--- a/src/cmd/godoc/mapping.go
+++ b/src/cmd/godoc/mapping.go
@@ -178,7 +178,8 @@ func (m *Mapping) ToAbsolute(spath string) string {
//
func (m *Mapping) ToRelative(fpath string) string {
for _, e := range m.list {
- if strings.HasPrefix(fpath, e.path) {
+ // if fpath has prefix e.path, the next character must be a separator (was issue 3096)
+ if strings.HasPrefix(fpath, e.path) && fpath[len(e.path)] == filepath.Separator {
spath := filepath.ToSlash(fpath)
// /absolute/prefix/foo -> prefix/foo
return path.Join(e.prefix, spath[len(e.path):]) // Join will remove a trailing '/'