As I understand docs if I set CYGWIN=noglob then command line arguments passed to Cygwin app WITHOUT changes.
I use native Emacs build so worry about stop Cygwin damage passed arguments. And seems this is not true. With CYGWIN=noglob all double quotes removed from args! Originally I discaver this when I call Cygwin application from NT Emacs by: (call-process "bash" nil t nil "-c" " echo \"a b\" ") I get: a b (ONE space!) I wrote simple app that print its args quoted: (call-process "printarg" nil t nil "-c" "echo \"a \"\"\"\" b\"\"\"\"\"") "/cygdrive/d/home/usr/bin/printarg" "-c" "echo a b" If compile printarg.c with MSVC all quotes printed: (call-process "printarg" nil t nil "-c" "echo \"a \"\"\"\" b\"\"\"\"\"") "/cygdrive/d/home/usr/bin/printarg" "-c" "echo "a """" b"""""" Same happen with cmd.exe: cmd# printarg-msvc "a \" b" "printarg-msvc.exe" "a " b" cmd# set CYGWIN=glob cmd# printarg-cygwin "a \" b" "printarg" "a " b" cmd# set CYGWIN=noglob cmd# printarg-cygwin "a \" b" "printarg" "a \" "b" -- 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