[Issue 13100] std.process.setCLOEXEC() throws on invalid file descriptor

via Digitalmars-d-bugs digitalmars-d-bugs at puremagic.com
Fri Jul 11 17:10:43 PDT 2014


https://issues.dlang.org/show_bug.cgi?id=13100

--- Comment #2 from github-bugzilla at puremagic.com ---
Commits pushed to master at https://github.com/D-Programming-Language/phobos

https://github.com/D-Programming-Language/phobos/commit/b7af42bafa7f4cdae415daf0d1e5bb212a40bd88
Fix issue #13100 - std.process.setCLOEXEC() throws

There are two cases in which the fcntl() calls may fail:

  1) the file descriptor is invalid, in which case errno == EBADF,
  2) they receive invalid arguments, in which case errno == EINVAL.

We just want to ignore the error in the former case, as evidenced by
the bug report, and the latter means that we have an error in
std.process, which is best handled by an assertion. (Note that it was
never possible to catch the exception anyway, since it was thrown in
the child process.)

https://github.com/D-Programming-Language/phobos/commit/357b627d2b7349c5fae8fc336f988242cd9fd51f
Merge pull request #2326 from kyllingstad/no-setcloexec-fail

Fix issue #13100 - std.process.setCLOEXEC() throws on invalid file descriptor

--


More information about the Digitalmars-d-bugs mailing list