aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames Yang <26634873@qq.com>2023-01-06 08:44:28 +0000
committerGopher Robot <gobot@golang.org>2023-01-24 01:02:52 +0000
commit7135710e01ab86468f23ac412e7f03f49235d5bb (patch)
treec3d39a1d24ba2cd479c8221630b44f8ea074009a
parent707f888797c6d37cf5da85e666e992d45f973150 (diff)
downloadgo-7135710e01ab86468f23ac412e7f03f49235d5bb.tar.xz
archive: error check when parse archive
Add error check when call `r.parseObject` in `parseArchive`. Change-Id: Ib1739f25941262593cf63837e272b6ee896d8613 GitHub-Last-Rev: 5a17f9aa2c7406e191a518fdac6cb519a425fd09 GitHub-Pull-Request: golang/go#57624 Reviewed-on: https://go-review.googlesource.com/c/go/+/460755 Run-TryBot: Ian Lance Taylor <iant@golang.org> Auto-Submit: Ian Lance Taylor <iant@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@google.com> Reviewed-by: Cherry Mui <cherryyz@google.com> Run-TryBot: Ian Lance Taylor <iant@google.com>
-rw-r--r--src/cmd/internal/archive/archive.go5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/cmd/internal/archive/archive.go b/src/cmd/internal/archive/archive.go
index d2c4f69ef5..e35a418e17 100644
--- a/src/cmd/internal/archive/archive.go
+++ b/src/cmd/internal/archive/archive.go
@@ -368,7 +368,10 @@ func (r *objReader) parseArchive(verbose bool) error {
if bytes.Equal(p, goobjHeader) {
typ = EntryGoObj
o = &GoObj{}
- r.parseObject(o, size)
+ err := r.parseObject(o, size)
+ if err != nil {
+ return err
+ }
} else {
typ = EntryNativeObj
r.skip(size)