diff options
author | Austin Clements <aclements@csail.mit.edu> | 2009-09-04 16:12:50 -0700 |
---|---|---|
committer | Austin Clements <aclements@csail.mit.edu> | 2009-09-04 16:12:50 -0700 |
commit | 4bd5147e35a0e4bd529a1ca2ae7b31fc9f0ab47e (patch) | |
tree | 9d1c64b6e28967d0fc2a711e1bb820c4e11cdd2a | |
parent | 83fca8e5e2c4909c2ed9de8a616a5055ed33bb44 (diff) | |
download | golang-4bd5147e35a0e4bd529a1ca2ae7b31fc9f0ab47e.tar.gz |
Don't crash in Sym.ReceiverName for symbols like "x.x"
R=rsc
APPROVED=rsc
DELTA=2 (0 added, 0 deleted, 2 changed)
OCL=34404
CL=34406
-rw-r--r-- | src/pkg/debug/gosym/symtab.go | 2 | ||||
-rw-r--r-- | usr/austin/sym/gosymtab.go | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/src/pkg/debug/gosym/symtab.go b/src/pkg/debug/gosym/symtab.go index d236be515..ece74f19d 100644 --- a/src/pkg/debug/gosym/symtab.go +++ b/src/pkg/debug/gosym/symtab.go @@ -52,7 +52,7 @@ func (s *Sym) PackageName() string { func (s *Sym) ReceiverName() string { l := strings.Index(s.Name, "."); r := strings.LastIndex(s.Name, "."); - if l == -1 || r == -1 { + if l == -1 || r == -1 || l == r { return ""; } return s.Name[l+1:r]; diff --git a/usr/austin/sym/gosymtab.go b/usr/austin/sym/gosymtab.go index 1ecfb4209..e9519a3e5 100644 --- a/usr/austin/sym/gosymtab.go +++ b/usr/austin/sym/gosymtab.go @@ -63,7 +63,7 @@ func (c *CommonSym) PackageName() string { func (c *CommonSym) ReceiverName() string { l := strings.Index(c.Name, "·"); r := strings.LastIndex(c.Name, "·"); - if l == -1 || r == -1 { + if l == -1 || r == -1 || l == r { return ""; } return c.Name[l+len("·"):r]; |