]> Cypherpunks repositories - gostls13.git/commitdiff
runtime: tricky replacements of g in traceback.go
authorMichael Pratt <mpratt@google.com>
Wed, 20 Jul 2022 17:18:54 +0000 (13:18 -0400)
committerMichael Pratt <mpratt@google.com>
Tue, 2 Aug 2022 18:52:13 +0000 (18:52 +0000)
Change-Id: I80e847451b697de049a01df051a73b5976b39d4a
Reviewed-on: https://go-review.googlesource.com/c/go/+/418589
Reviewed-by: Austin Clements <austin@google.com>
Run-TryBot: Michael Pratt <mpratt@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>

src/runtime/traceback.go

index 9a5d9363ffa17489921d37d68117cdbbedeb4ec5..6df0bbfabebac068290e0e4898e612405bb8fcb9 100644 (file)
@@ -923,8 +923,8 @@ func gcallers(gp *g, skip int, pcbuf []uintptr) int {
 // showframe reports whether the frame with the given characteristics should
 // be printed during a traceback.
 func showframe(f funcInfo, gp *g, firstFrame bool, funcID, childID funcID) bool {
-       g := getg()
-       if g.m.throwing >= throwTypeRuntime && gp != nil && (gp == g.m.curg || gp == g.m.caughtsig.ptr()) {
+       mp := getg().m
+       if mp.throwing >= throwTypeRuntime && gp != nil && (gp == mp.curg || gp == mp.caughtsig.ptr()) {
                return true
        }
        return showfuncinfo(f, firstFrame, funcID, childID)