diff options
| author | Russ Cox <rsc@golang.org> | 2021-04-14 12:44:04 -0400 |
|---|---|---|
| committer | Russ Cox <rsc@golang.org> | 2021-04-23 21:43:02 +0000 |
| commit | 59ceb985c7f78ca5dba6b83ff126d97d86267d7c (patch) | |
| tree | 5fc469a7f2c6cfcd7cfad2b8c4f6af6158911e0a /src/cmd/link/internal/loader/loader.go | |
| parent | 199575a119d909b98afb044a94f43249883c1062 (diff) | |
| download | go-59ceb985c7f78ca5dba6b83ff126d97d86267d7c.tar.xz | |
cmd/link: make Loader.SymName not crash
Even if not presented with a valid symbol, recover gracefully,
so that debug prints do not crash.
Change-Id: I06bbe4bec5f90b79b4830e772a7fc3d7c919df1b
Reviewed-on: https://go-review.googlesource.com/c/go/+/312036
Trust: Russ Cox <rsc@golang.org>
Run-TryBot: Russ Cox <rsc@golang.org>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Cherry Zhang <cherryyz@google.com>
Diffstat (limited to 'src/cmd/link/internal/loader/loader.go')
| -rw-r--r-- | src/cmd/link/internal/loader/loader.go | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/cmd/link/internal/loader/loader.go b/src/cmd/link/internal/loader/loader.go index 141dd0ac68..d5331b3fef 100644 --- a/src/cmd/link/internal/loader/loader.go +++ b/src/cmd/link/internal/loader/loader.go @@ -771,6 +771,9 @@ func (l *Loader) SymName(i Sym) string { return pp.name } r, li := l.toLocal(i) + if r == nil { + return "?" + } name := r.Sym(li).Name(r.Reader) if !r.NeedNameExpansion() { return name |
