runtime: don't crash if signal handler info argument is nil
authorIan Lance Taylor <ian@gcc.gnu.org>
Mon, 14 Nov 2016 23:16:04 +0000 (23:16 +0000)
committerIan Lance Taylor <ian@gcc.gnu.org>
Mon, 14 Nov 2016 23:16:04 +0000 (23:16 +0000)
commit7b9f5ceef164a4d8fd6c07b20101af1420d6100c
treeb5ec8e784225739b75eaacc89ac8e28611847abf
parent6964bb3ed962554b18ca92633b5395f91f9bebac
runtime: don't crash if signal handler info argument is nil

    Apparently on Solaris 10 a SA_SIGINFO signal handler can be invoked with
    a nil info argument.  I would not have believed it but I've now seen it
    happen, and the sigaction man page actually says "If the second argument
    is not equal to NULL, it points to a siginfo_t structure...."  So, if
    that happens, don't crash.

    Also fix another case where we want to make sure that &T{} does not
    allocate.

    Reviewed-on: https://go-review.googlesource.com/33150

From-SVN: r242403
gcc/go/gofrontend/MERGE
libgo/go/runtime/signal_gccgo.go
libgo/go/runtime/signal_sigtramp.go
libgo/runtime/go-signal.c