diff options
Diffstat (limited to 'libgo/go/runtime/pprof/map.go')
-rw-r--r-- | libgo/go/runtime/pprof/map.go | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/libgo/go/runtime/pprof/map.go b/libgo/go/runtime/pprof/map.go index a271ad0..7c75872 100644 --- a/libgo/go/runtime/pprof/map.go +++ b/libgo/go/runtime/pprof/map.go @@ -68,7 +68,8 @@ Search: if len(m.freeStk) < len(stk) { m.freeStk = make([]uintptr, 1024) } - e.stk = m.freeStk[:len(stk)] + // Limit cap to prevent append from clobbering freeStk. + e.stk = m.freeStk[:len(stk):len(stk)] m.freeStk = m.freeStk[len(stk):] for j := range stk { |