diff options
| author | Leon Klingele <git@leonklingele.de> | 2019-01-30 17:34:43 +0000 |
|---|---|---|
| committer | Bryan C. Mills <bcmills@google.com> | 2019-03-02 05:04:49 +0000 |
| commit | d346a9b7725b5313ddda3913cbcd5ff5fba0c909 (patch) | |
| tree | 664a3d25316712f0a5df93c5e1ee33f3b6e2b74d /src | |
| parent | acf8f2c1545b4ce2459a48fac32340bad7e8c692 (diff) | |
| download | go-d346a9b7725b5313ddda3913cbcd5ff5fba0c909.tar.xz | |
cmd/go/internal/modfetch: add missing error checks
Change-Id: I51a9c06384875fbb12db0e05128f23bd23a163a1
GitHub-Last-Rev: 126452f15cbb8e06ff683dcd60e63f1925dcf8f1
GitHub-Pull-Request: golang/go#30000
Reviewed-on: https://go-review.googlesource.com/c/160424
Reviewed-by: Bryan C. Mills <bcmills@google.com>
Run-TryBot: Bryan C. Mills <bcmills@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Diffstat (limited to 'src')
| -rw-r--r-- | src/cmd/go/internal/modfetch/coderepo.go | 3 | ||||
| -rw-r--r-- | src/cmd/go/internal/modfetch/pseudo.go | 3 | ||||
| -rw-r--r-- | src/cmd/go/internal/modfetch/pseudo_test.go | 7 |
3 files changed, 13 insertions, 0 deletions
diff --git a/src/cmd/go/internal/modfetch/coderepo.go b/src/cmd/go/internal/modfetch/coderepo.go index 5018b6d8af..54baaaa909 100644 --- a/src/cmd/go/internal/modfetch/coderepo.go +++ b/src/cmd/go/internal/modfetch/coderepo.go @@ -541,6 +541,9 @@ func (r *codeRepo) Zip(dst io.Writer, version string) error { return err } w, err := zw.Create(r.modPrefix(version) + "/" + name) + if err != nil { + return err + } lr := &io.LimitedReader{R: rc, N: size + 1} if _, err := io.Copy(w, lr); err != nil { return err diff --git a/src/cmd/go/internal/modfetch/pseudo.go b/src/cmd/go/internal/modfetch/pseudo.go index f105373cd4..88c3d3a527 100644 --- a/src/cmd/go/internal/modfetch/pseudo.go +++ b/src/cmd/go/internal/modfetch/pseudo.go @@ -98,6 +98,9 @@ func IsPseudoVersion(v string) bool { // embedded in the pseudo-version is not a valid time. func PseudoVersionTime(v string) (time.Time, error) { timestamp, _, err := parsePseudoVersion(v) + if err != nil { + return time.Time{}, err + } t, err := time.Parse("20060102150405", timestamp) if err != nil { return time.Time{}, fmt.Errorf("pseudo-version with malformed time %s: %q", timestamp, v) diff --git a/src/cmd/go/internal/modfetch/pseudo_test.go b/src/cmd/go/internal/modfetch/pseudo_test.go index 3c2fa51468..d0e800b450 100644 --- a/src/cmd/go/internal/modfetch/pseudo_test.go +++ b/src/cmd/go/internal/modfetch/pseudo_test.go @@ -60,6 +60,13 @@ func TestPseudoVersionTime(t *testing.T) { } } +func TestInvalidPseudoVersionTime(t *testing.T) { + const v = "---" + if _, err := PseudoVersionTime(v); err == nil { + t.Error("expected error, got nil instead") + } +} + func TestPseudoVersionRev(t *testing.T) { for _, tt := range pseudoTests { rev, err := PseudoVersionRev(tt.version) |
