Skip to content

RawFDs now managed by forked process, not shell::pipe::builtin, when appropriate

Michael Aaron Murphy requested to merge huntergoldstein:doubleclose into master

Created by: huntergoldstein

Changes introduced by this pull request:

  • shell::pipe::builtin will not close any file descriptors: this will be done by RefinedJob::drop or inside the child process if appropriate. This prevents a double close in the case of a builtin being run in the parent process.

Fixes: Closes #478 (closed)


@mmstick: I'm thinking about replacing all of the RawFds with Files. It would mean that RefinedJob doesn't need to have a custom Drop implementation and it means we are less dependent on *nix specific things. Thoughts?

Merge request reports