]> Cypherpunks repositories - gostls13.git/commit
os/exec: skip poll descriptors when checking for open descriptors
authorIan Lance Taylor <iant@golang.org>
Wed, 13 Nov 2019 19:09:27 +0000 (11:09 -0800)
committerIan Lance Taylor <iant@golang.org>
Wed, 13 Nov 2019 21:24:35 +0000 (21:24 +0000)
commit718f553915cc1c13d7b31cd264c131987f67f14d
treeca4e4db9050c030f1de95069226029e819141138
parent49e05d4f91771fc6f090238a6a8c5f1796b01afe
os/exec: skip poll descriptors when checking for open descriptors

It turns out that there is a path that initializes netpoll and opens
file descriptors before running the os/exec init function: on some
systems, the uses of NewFile when setting os.Stdin and friends can
initialize netpoll which can open file descriptors. This in itself
is not a problem, but when we check whether the new files are open
using os.NewFile, a side-effect is to put them into non-blocking mode.
This can then break future uses of netpoll.

Updates #35469
Fixes #35566

Change-Id: I1b2e2c943695d1c2d29496b050abbce9ee710a00
Reviewed-on: https://go-review.googlesource.com/c/go/+/207078
Reviewed-by: Bryan C. Mills <bcmills@google.com>
src/os/exec/exec_test.go