Changes between Initial Version and Version 1 of Ticket #280, comment 2
- Timestamp:
- Nov 22, 2017, 11:58:20 AM (7 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Ticket #280, comment 2
initial v1 1 BTW, although Windows has the same spawn logic as OS/2, such a problem doesn't exist here because it was solved inside their `CreateProcess` that may take handles to be assigned as std I/O in the child. And while we can do something similar by providing a special implementation of `spawn` (that would effectively do `dup(); spawn(P_NOWAIT); dup()`) in e.g. LIBCx and export this function to Python instead of exposing `DosEnterCritSec`, I'm not convinced so far that it's worth doing as there might be other program logic besides `dup; spawn; dup` that needs protection.1 BTW, although Windows has the same spawn logic as OS/2, such a problem doesn't exist there because it was solved inside their `CreateProcess` that may take handles to be assigned as std I/O in the child. And while we can do something similar by providing a special implementation of `spawn` (that would effectively do `dup(); spawn(P_NOWAIT); dup()`) in e.g. LIBCx and export this function to Python instead of exposing `DosEnterCritSec`, I'm not convinced so far that it's worth doing as there might be other program logic besides `dup; spawn; dup` that needs protection.