On Feb 15 21:44, Eric Blake wrote: > Earlier versions of bash did not install a /dev/stdout symlink, but > special cased it directly in bash. It may be that this has always been > broken on cygwin, but because bash was special-casing things instead of > relying on a symlink, no one noticed. But now that bash installs a > /dev/stdout symlink, it would be nice if cygwin could be patched to match > Linux behavior on reopening /dev/stdout.
/dev/stdout is nothing special for Cygwin. /dev/stdout is just a symlink pointing to /proc/self/fd/1. /proc/self is just a symlink to /proc/<pid>. /proc/<pid>/fd/1 is just a symlink to the file opened in this process using fd 1. After the symlink expansion has taken place, there's nothing left of /dev/stdout in the path handling. It's not even clear anymore, that this file is an open file in *this* very process. How is Cygwin supposed to know that it is a symlink with a special meaning? Do you think that Cygwin should test every file on every open to be "/dev/stdout"? OTOH, if you can come up with a nice solution, PTC. Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Project Co-Leader cygwin AT cygwin DOT com Red Hat -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/