internal/fetch: fail on bad package error
The goPackage.err field should only contain an error that is
godoc.ErrTooLarge. Check for that.
Change-Id: I961ca2591391c1aeb0fa5bfb8789b21a9d2ce8e0
Reviewed-on: https://go-review.googlesource.com/c/pkgsite/+/289670
Trust: Jonathan Amsterdam <jba@google.com>
Run-TryBot: Jonathan Amsterdam <jba@google.com>
TryBot-Result: kokoro <noreply+kokoro@google.com>
Reviewed-by: Julie Qiu <julie@golang.org>
diff --git a/internal/fetch/package.go b/internal/fetch/package.go
index b694f86..fd74a09 100644
--- a/internal/fetch/package.go
+++ b/internal/fetch/package.go
@@ -207,6 +207,9 @@
if errors.Is(pkg.err, godoc.ErrTooLarge) {
status = derrors.PackageDocumentationHTMLTooLarge
errMsg = pkg.err.Error()
+ } else if pkg.err != nil {
+ // ErrTooLarge is the only valid value of pkg.err.
+ return nil, nil, fmt.Errorf("bad package error for %s: %v", pkg.path, pkg.err)
}
if d != nil { // should only be nil for tests
isRedist, lics := d.PackageInfo(innerPath)