On Fri, Jan 24, 2014 at 03:14:30PM -0800, Daniel Dai wrote: >Hi, Christopher, > >The current logic is: if the parameter contains quote, then put a >quote around the parameter (winf.cc:78). However, if the quote is in >the beginning/end, cygwin will still quote it, and thus double quoted >parameter (such as ""a=b"").
That is as intended. It doesn't matter where the quote is. This is an argv list. Quotes don't mean anything in a UNIX argv list. They do need to be quoted for Windows though. So, if there is a quote at the beginning of argv[7], then the process should see a quote in argv[7]. If I say pass "\"a=b\"", the subprocess should diligently report "a=b" quotes and all. That is what it does now after my change. AFAICT, this is all working as it should. cgf