From: Bryan C. Mills Date: Fri, 19 Apr 2019 14:15:58 +0000 (-0400) Subject: cmd/go/internal/modfetch: comment on known bug in isVendoredPackage X-Git-Tag: go1.13beta1~625 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=47150aafbfaadf1f193b8840df02f388998e83ab;p=gostls13.git cmd/go/internal/modfetch: comment on known bug in isVendoredPackage Fixes #31562 Change-Id: Ida30dd8071eccb6b490ab89a1de087038fe26796 Reviewed-on: https://go-review.googlesource.com/c/go/+/172977 Run-TryBot: Bryan C. Mills TryBot-Result: Gobot Gobot Reviewed-by: Jay Conrod --- diff --git a/src/cmd/go/internal/modfetch/coderepo.go b/src/cmd/go/internal/modfetch/coderepo.go index 7aedf1d861..3581f93fe7 100644 --- a/src/cmd/go/internal/modfetch/coderepo.go +++ b/src/cmd/go/internal/modfetch/coderepo.go @@ -634,6 +634,19 @@ func isVendoredPackage(name string) bool { if strings.HasPrefix(name, "vendor/") { i += len("vendor/") } else if j := strings.Index(name, "/vendor/"); j >= 0 { + // This offset looks incorrect; this should probably be + // + // i = j + len("/vendor/") + // + // (See https://golang.org/issue/31562.) + // + // Unfortunately, we can't fix it without invalidating checksums. + // Fortunately, the error appears to be strictly conservative: we'll retain + // vendored packages that we should have pruned, but we won't prune + // non-vendored packages that we should have retained. + // + // Since this defect doesn't seem to break anything, it's not worth fixing + // for now. i += len("/vendor/") } else { return false