mirror of
https://github.com/golang/go
synced 2024-11-23 22:20:02 -07:00
[dev.link] cmd/link/internal/loader: fix buglet in section handling
Allow for the possibility that a client could call newExtSym(), then ask for the section of the new sym before SetSectSym is called on it (check in SymSect for this case). Change-Id: I7bd78e7b3b7618943705b616f62ea78c4a1b68d0 Reviewed-on: https://go-review.googlesource.com/c/go/+/229603 Reviewed-by: Jeremy Faller <jeremy@golang.org>
This commit is contained in:
parent
67bf856b96
commit
adea6a90e3
@ -1075,6 +1075,12 @@ func (l *Loader) SetSymAlign(i Sym, align int32) {
|
||||
|
||||
// SymValue returns the section of the i-th symbol. i is global index.
|
||||
func (l *Loader) SymSect(i Sym) *sym.Section {
|
||||
if int(i) >= len(l.symSects) {
|
||||
// symSects is extended lazily -- it the sym in question is
|
||||
// outside the range of the existing slice, then we assume its
|
||||
// section has not yet been set.
|
||||
return nil
|
||||
}
|
||||
return l.sects[l.symSects[i]]
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user