Change-Id: I0280d478b7d0a59d8e2082aa87fab6d7d9f36a18
Reviewed-on: https://go-review.googlesource.com/18158
Reviewed-by: Aram Hăvărneanu <aram@mgk.ro>
}
func setsigstack(i int32) {
- throw("setsigstack")
+ var sa sigactiont
+ sigaction(i, nil, &sa)
+ handler := *((*uintptr)(unsafe.Pointer(&sa._funcptr)))
+ if handler == 0 || handler == _SIG_DFL || handler == _SIG_IGN || sa.sa_flags&_SA_ONSTACK != 0 {
+ return
+ }
+ sa.sa_flags |= _SA_ONSTACK
+ sigaction(i, &sa, nil)
}
func getsig(i int32) uintptr {