Message312266
os.dup2(fd, fd, inheritable=False) may fail or change fd inheritability in following ways:
1) POSIX without F_DUP2FD_CLOEXEC
1.1) dup3() is available (a common case for Linux): OSError (EINVAL, dup3() doesn't allow equal descriptors)
1.2) dup3() is not available: fd made non-inheritable
2) POSIX with F_DUP2FD_CLOEXEC (FreeBSD): inheritability is not changed
3) Windows: fd made non-inheritable
In contrast, os.dup2(fd, fd, inheritable=True) never changes fd inheritability (same as before PEP 446 landed). I suggest to make os.dup2(fd, fd, inheritable=False) behave the same. |
|
Date |
User |
Action |
Args |
2018-02-17 03:24:02 | izbyshev | set | recipients:
+ izbyshev, vstinner, benjamin.peterson |
2018-02-17 03:24:02 | izbyshev | set | messageid: <1518837842.39.0.467229070634.issue32862@psf.upfronthosting.co.za> |
2018-02-17 03:24:02 | izbyshev | link | issue32862 messages |
2018-02-17 03:24:01 | izbyshev | create | |
|