]> Cypherpunks repositories - gostls13.git/commitdiff
runtime: fix off-by-1 error in textOff
authorCherry Mui <cherryyz@google.com>
Tue, 12 Sep 2023 17:52:42 +0000 (13:52 -0400)
committerCherry Mui <cherryyz@google.com>
Tue, 12 Sep 2023 18:14:29 +0000 (18:14 +0000)
The code meant to check if it is the last section, which is
i === len(md.textsectmap)-1. The -1 was missing.

Change-Id: Ifbb9e40df730abe3bec20fde5f56f5c75dfd9e8f
Reviewed-on: https://go-review.googlesource.com/c/go/+/527795
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Than McIntosh <thanm@google.com>
src/runtime/symtab.go

index 129af01a34eb1bfbfc8daa3873b4eaf513c86756..0cc3085f6ad71ec084d4966d4ecc27c57b437cad 100644 (file)
@@ -622,7 +622,7 @@ func (md *moduledata) textOff(pc uintptr) (uint32, bool) {
                        }
                        end := sect.baseaddr + (sect.end - sect.vaddr)
                        // For the last section, include the end address (etext), as it is included in the functab.
-                       if i == len(md.textsectmap) {
+                       if i == len(md.textsectmap)-1 {
                                end++
                        }
                        if pc < end {