[GHC] #3649: inconsistent exception between unix/windows for running non-existant program
GHC
ghc-devs at haskell.org
Tue Jul 30 20:05:56 CEST 2013
#3649: inconsistent exception between unix/windows for running non-existant
program
--------------------------------------+------------------------------------
Reporter: duncan | Owner:
Type: bug | Status: new
Priority: low | Milestone: 7.6.2
Component: libraries/process | Version: 6.10.4
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture: Unknown/Multiple
Type of failure: None/Unknown | Difficulty: Unknown
Test Case: | Blocked By:
Blocking: | Related Tickets:
--------------------------------------+------------------------------------
Changes (by duncan):
* status: closed => new
* resolution: fixed =>
Comment:
Note that the C code still says (roughly):
{{{
if (close_fds) {
int i;
// XXX Not the pipe
for (i = 3; i < max_fd; i++) {
close(i);
}
}
}}}
Which means that this nice new error handling will (I think) go wrong in
the `CreateProcess { close_fds = True }` case. Should be easy to fix, just
something like...
{{{
for (i = 3; i < max_fd; i++) {
if (i != forkCommunicationFds[1]) { close(i); }
}
}}}
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/3649#comment:10>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list