1
0
mirror of https://github.com/golang/go synced 2024-11-19 06:24:41 -07:00
go/misc/cgo/testcarchive
Elias Naur 78074f6850 runtime: handle SIGPIPE in c-archive and c-shared programs
Before this CL, Go programs in c-archive or c-shared buildmodes
would not handle SIGPIPE. That leads to surprising behaviour where
writes on a closed pipe or socket would raise SIGPIPE and terminate
the program. This CL changes the Go runtime to handle
SIGPIPE regardless of buildmode. In addition, SIGPIPE from non-Go
code is forwarded.

This is a refinement of CL 32796 that fixes the case where a non-default
handler for SIGPIPE is installed by the host C program.

Fixes #17393

Change-Id: Ia41186e52c1ac209d0a594bae9904166ae7df7de
Reviewed-on: https://go-review.googlesource.com/35960
Run-TryBot: Elias Naur <elias.naur@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
2017-02-03 20:07:36 +00:00
..
src runtime: handle SIGPIPE in c-archive and c-shared programs 2017-02-03 20:07:36 +00:00
carchive_test.go runtime: handle SIGPIPE in c-archive and c-shared programs 2017-02-03 20:07:36 +00:00
main2.c runtime: handle SIGPIPE in c-archive and c-shared programs 2017-02-03 20:07:36 +00:00
main3.c runtime: handle SIGPIPE in c-archive and c-shared programs 2017-02-03 20:07:36 +00:00
main4.c misc/cgo: decrease test failure timeouts 2016-11-17 16:31:34 +00:00
main5.c runtime: handle SIGPIPE in c-archive and c-shared programs 2017-02-03 20:07:36 +00:00
main_unix.c misc/cgo/testcarchive: split main.c into unix and non-unix 2016-03-26 00:57:23 +00:00
main_windows.c misc/cgo/testcarchive: split main.c into unix and non-unix 2016-03-26 00:57:23 +00:00
main.c misc/cgo/testcarchive: split main.c into unix and non-unix 2016-03-26 00:57:23 +00:00