Tommy, please don't pull this for now.

> [Exec improvements : Windows redirection, and more redirection control.
> Eric Kow <[EMAIL PROTECTED]>**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

_______________________________________________
darcs-devel mailing list
[email protected]
http://www.abridgegame.org/cgi-bin/mailman/listinfo/darcs-devel

Reply via email to