1 Feb
2013
1 Feb
'13
6:18 a.m.
2013/2/1 Charles-François Natali
dup2(oldfd, newfd) closes oldfd.
No, it doesn't close oldfd.
It may close newfd if it was already open.
(I guess that's what he meant).
Anyway, only dup2() should probably release the GIL.
One reasonable heuristic is to check the man page: if the syscall can return EINTR, then the GIL should be released.
Should the call be retried in the EINTR case? (After a PyErr_CheckSignals) -- Amaury Forgeot d'Arc