Question

When I try to use ediff-revision under Emacs 23.2.1 for a CVS-managed file, I receive the following error in the *ediff-errors* frame, instead of commencing directly to the ediff results:

cygwin warning:
  MS-DOS style path detected: c:/Users/BILL/AppData/Local/Temp/misc.cpp.~1.10~
  Preferred POSIX equivalent is: /cygdrive/c/Users/BILL/AppData/Local/Temp/misc.cpp.~1.10~
  CYGWIN environment variable option "nodosfilewarning" turns off this warning.
  Consult the user's guide for more details about POSIX paths:
    http://cygwin.com/cygwin-ug-net/using.html#using-pathnames

My problem is that I have already set that CYGWIN environment variable option "nodosfilewarning", so I have no idea why I am receiving this error.

In fact, I can verify this right from an inferior shell under the same Emacs instance:

> set | grep -i nodos
CYGWIN=nodosfilewarning

I am running Cygwin 1.7.9-1 under Windows 7, in case this may be relevant (and I never had this problem before upgrading from Cygwin 1.5 to 1.7).

Any idea how to get rid of this error?

P.S. A subsequent call to ediff-revision succeeds without triggering this warning.

Was it helpful?

Solution

The CYGWIN variable is parsed when the first process in a Cygwin process tree is invoked. Hence, setting it in .bashrc or something like that is too late. A good place to set it is in the global Windows environment, under Control Panel->System->Advanced->Environment Variables.

OTHER TIPS

I added (setenv "CYGWIN" "nodosfilewarning") to setup-cygwin.el. That seems to take care of the problem without, AFAICT, creating other problems. I also filed Emacs bug #14541 for this.

From within emacs, you may also:

  • M-x setenv
  • CYGWIN
  • nodosfilewarning

as an immediate alternative to altering setup-cygwin.el.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top