Commit fbea3c33 by Ian Lance Taylor

re PR go/83794 (misc/cgo/test uses gigabytes of memory)

	PR go/83794
    misc/cgo/test: avoid endless loop when we can't parse notes
    
    Reviewed-on: https://go-review.googlesource.com/87416

From-SVN: r256553
parent c5269263
1176dd2b53f2d2b826b599a126f3f9828283cec3 fe8481db9f5b37eb9a0c329673789eaaf1335598
The first line of this file holds the git revision number of the last The first line of this file holds the git revision number of the last
merge done from the gofrontend repository. merge done from the gofrontend repository.
...@@ -27,6 +27,7 @@ func testBuildID(t *testing.T) { ...@@ -27,6 +27,7 @@ func testBuildID(t *testing.T) {
defer f.Close() defer f.Close()
c := 0 c := 0
sections:
for i, s := range f.Sections { for i, s := range f.Sections {
if s.Type != elf.SHT_NOTE { if s.Type != elf.SHT_NOTE {
continue continue
...@@ -47,7 +48,7 @@ func testBuildID(t *testing.T) { ...@@ -47,7 +48,7 @@ func testBuildID(t *testing.T) {
if len(d) < 12 { if len(d) < 12 {
t.Logf("note section %d too short (%d < 12)", i, len(d)) t.Logf("note section %d too short (%d < 12)", i, len(d))
continue continue sections
} }
namesz := f.ByteOrder.Uint32(d) namesz := f.ByteOrder.Uint32(d)
...@@ -59,7 +60,7 @@ func testBuildID(t *testing.T) { ...@@ -59,7 +60,7 @@ func testBuildID(t *testing.T) {
if int(12+an+ad) > len(d) { if int(12+an+ad) > len(d) {
t.Logf("note section %d too short for header (%d < 12 + align(%d,4) + align(%d,4))", i, len(d), namesz, descsz) t.Logf("note section %d too short for header (%d < 12 + align(%d,4) + align(%d,4))", i, len(d), namesz, descsz)
continue continue sections
} }
// 3 == NT_GNU_BUILD_ID // 3 == NT_GNU_BUILD_ID
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment