[darcs-devel] darcs patch: Exec improvements : Windows
redirection, and more redi...
Juliusz Chroboczek
Juliusz.Chroboczek at pps.jussieu.fr
Wed Sep 6 11:34:57 PDT 2006
Tommy, please don't pull this for now.
> [Exec improvements : Windows redirection, and more redirection control.
> Eric Kow <eric.kow at gmail.com>**20060707054134
I've applied this, since I want it to get some testing from Windows
folks as soon as possible. But I don't understand it.
- under Windows, passing Nothing as the last argument causes stderr to
go to stdout;
- under Unix, passing Nothing as the last argument causes stderr to go
to stdout if stdout was redirected, and to stderr otherwise.
If that's what you meant, it definitely deserves a comment in the
source. But I'm not sure why that's desirable behaviour.
Since exec is now just (exec_ ... Nothing), this changes the effect of
exec, but in subtly different ways on the two platforms.
Note that, unless I'm missing something this will also change the
behaviour of other commands: ``darcs diff'', for example, will now
push any warnings from diff through the darcs printer, rather than
printing them directly. And ``darcs dist'' will print any warnings
from tar on stdout rather than stderr, which is clearly wrong. I
haven't checked the other uses of exec and friends, but I bet there
are other such issues.
Oh, by the way, there's some duplicated code in the Unix version,
which you can get rid of by commuting the two case expressions.
Juliusz
More information about the darcs-devel
mailing list