From 60ffea201e66e0d9375dc5bec85245d7b416710f Mon Sep 17 00:00:00 2001 From: Gustav Westling Date: Sun, 22 Jul 2018 11:07:42 +0000 Subject: [PATCH] godoc: correctly parse packages with digits in the package name Fixes golang/go#26514 Change-Id: I4540737425c225c0f0c6104b5b3524621d2b0c6f GitHub-Last-Rev: 9d5fefb6ed31579b723293c7f43fcf677ac4cddb GitHub-Pull-Request: golang/tools#41 Reviewed-on: https://go-review.googlesource.com/125335 Reviewed-by: Brad Fitzpatrick Run-TryBot: Brad Fitzpatrick TryBot-Result: Gobot Gobot --- godoc/versions.go | 2 +- godoc/versions_test.go | 9 +++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/godoc/versions.go b/godoc/versions.go index 8a04905e84..f03c714fe2 100644 --- a/godoc/versions.go +++ b/godoc/versions.go @@ -132,7 +132,7 @@ func parseRow(s string) (vr versionedRow, ok bool) { return } rest := s[len("pkg "):] - endPkg := strings.IndexFunc(rest, func(r rune) bool { return !(unicode.IsLetter(r) || r == '/') }) + endPkg := strings.IndexFunc(rest, func(r rune) bool { return !(unicode.IsLetter(r) || r == '/' || unicode.IsDigit(r)) }) if endPkg == -1 { return } diff --git a/godoc/versions_test.go b/godoc/versions_test.go index bb408514d0..81dc3e5c2b 100644 --- a/godoc/versions_test.go +++ b/godoc/versions_test.go @@ -51,6 +51,15 @@ func TestParseVersionRow(t *testing.T) { name: "FileInfoHeader", }, }, + { + row: "pkg encoding/base32, method (Encoding) WithPadding(int32) *Encoding", + want: versionedRow{ + pkg: "encoding/base32", + kind: "method", + name: "WithPadding", + recv: "Encoding", + }, + }, } for i, tt := range tests {