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

From: Drew Adams <[email-masked]>
Date: Mon, 3 Jun 2013 09:21:10 -0700 (PDT)

> > But I wonder if `ediff-buffers' could perhaps prevent the error/warning
> > anyway.  I don't know whether it is really the 8-char DOS file-name
> > format that Cygwin objects to, but I think so.  Maybe just having it
> > use full Windows (not DOS) file names would be a fix?
> 
> No.  Cygwin w[h]ines about drive letters, not about the 8+3 aliases.  So
> using long file names will not help.  You can verify that by invoking
> Diff from the shell prompt.

I see.  That was not clear to me, but it seems you are right.

> 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?

FWIW, I have added (setenv "CYGWIN" "nodosfilewarning") to setup-cygwin.el.
That seems to take care of the problem without, AFAICT, creating other
problems.  But if you know of problems that it introduces, please let me know.