]> Cypherpunks.ru repositories - gostls13.git/commit
runtime: subtract one from ip when determining abort
authorJason A. Donenfeld <Jason@zx2c4.com>
Thu, 25 Feb 2021 00:29:58 +0000 (01:29 +0100)
committerJason A. Donenfeld <Jason@zx2c4.com>
Thu, 25 Feb 2021 01:30:37 +0000 (01:30 +0000)
commitff614b13d90961f55b1058bd798c6d4e92d3939c
treef32c351b78558d79e5ec49a62fa0f695f6f5dcab
parentdbbc5ec7e87f1976188c57ce4fb0d41e324df687
runtime: subtract one from ip when determining abort

On windows/arm, the abort is given from one byte off of the function
address, perhaps because Windows wants to simulate x86/amd64 modes, or
because it's jumping from thumb mode. This is not the case with
windows/arm64, though.

This prevents a failure in the builders with the TestAbort test:

    crash_test.go:727: output contains BAD:
        panic: runtime error: invalid memory address or nil pointer dereference [recovered]
                panic: BAD: recovered from abort
        [signal 0xc0000005 code=0x0 addr=0x0 pc=0x6a5721]

Change-Id: I8939c60611863cc0c325e179a772601acea9fd4a
Reviewed-on: https://go-review.googlesource.com/c/go/+/296153
Trust: Jason A. Donenfeld <Jason@zx2c4.com>
Run-TryBot: Jason A. Donenfeld <Jason@zx2c4.com>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Cherry Zhang <cherryyz@google.com>
src/runtime/signal_windows.go