Subject: Re: bug#14541: 24.3.50; `ediff-buffers' does not play well with recent Cygwin version

From: Eli Zaretskii <[email-masked]>
Date: Mon, 03 Jun 2013 19:37:08 +0300

> Date: Mon, 3 Jun 2013 09:21:10 -0700 (PDT)
> From: Drew Adams <[email-masked]>
> Cc: [email-masked]
> 
> > We could perhaps push "CYGWIN=nodosfilewarning" into the environment
> > when Emacs launches child processes.  However, as these URLs indicate:
> > 
> >   http://stackoverflow.com/questions/9079982/cygwin-nodosfilewarning-doesnt-
> > help-cygwin-warning
> >   http://superuser.com/questions/370545/behaviour-of-cygwins-
> > nodosfilewarning
> > 
> > this solution is not reliable if there's some other Cygwin process
> > running on the same system.  So I think the only reliable solution is
> > to put the above into the System environment variables, so that
> > whatever the first Cygwin process is, it always sees it.
> 
> I read the postings at both of those URLs, but I do not see anywhere where
> they say what you say about reliability.  What is a concrete example of a
> problem introduced by Emacs setting this env var?

According to those URLs, only the first Cygwin process invoked on a
system checks the CYGWIN environment variable.  It leaves the result
in a shared memory, which all the other Cygwin processes access.  So
if the first process was invoked outside of Emacs, and didn't see that
variable, you will get the warning, even if we push the variable into
the environment of our child programs.