On Nov 20 14:04, mike marchywka wrote: > On 11/20/09, Christopher Faylor wrote: > > On Fri, Nov 20, 2009 at 01:19:57PM -0500, mike marchywka wrote: > >>On 11/20/09, Corinna Vinschen wrote: > >>> And given POSIX, if so, it would be an application bug if the application > >>> doesn't care by itself to use setenv/getenv in a thread-safe manner. > >> > >>Why does the OS let this happen? I thought windoze should avoid > >>garbage. > > > > Er, I think you're a little confused about what we're talking about. The > > OS doesn't enforce thread safety. There's really no way that it can. > > We are talking about windoze env variables right? I did ask previously > I thought.
We're only talking about Windows env variables if non-Cygwin processes are involved. As long as only Cygwin processes are involved in the process, env variables are inherited via a Cygwin mechanism, not via the Windows environment. > The OS is the only place you can when the threads are in different > processes unknown to each other. Or, can two different processes share > the > same thread? No, never. If there is a concurrency problem with the envionment, it's between threads of the same process. In that case, we can make getenv, setenv and friends thread-safe, but it's still actually a problem of the application, given that getenv, setenv and friends are not thread-safe per POSIX. See http://www.opengroup.org/onlinepubs/9699919799/functions/setenv.html http://www.opengroup.org/onlinepubs/9699919799/functions/getenv.html http://www.opengroup.org/onlinepubs/9699919799/functions/unsetenv.html Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Project Co-Leader cygwin AT cygwin DOT com Red Hat -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple