This libgo patch ignores an EINTR which occurs while calling connect on
a socket. Bootstrapped and ran Go testsuite on
x86_64-unknown-linux-gnu. Committed to mainline.
This is for PR 48019.
Ian
diff -r eb43a92af99e libgo/go/net/sock.go
--- a/libgo/go/net/sock.go Tue Mar 08 22:31:00 2011 -0800
+++ b/libgo/go/net/sock.go Tue Mar 08 22:45:17 2011 -0800
@@ -54,6 +54,9 @@
if ra != nil {
e = syscall.Connect(s, ra)
+ for e == syscall.EINTR {
+ e = syscall.Connect(s, ra)
+ }
if e != 0 {
closesocket(s)
return nil, os.Errno(e)