X-Recipient: archive-cygwin AT delorie DOT com X-SWARE-Spam-Status: No, hits=-1.7 required=5.0 tests=AWL,BAYES_00,KHOP_THREADED,RCVD_IN_HOSTKARMA_NO,SPF_NEUTRAL X-Spam-Check-By: sourceware.org Message-ID: <4F75D990.9030706@cs.utoronto.ca> Date: Fri, 30 Mar 2012 12:04:32 -0400 From: Ryan Johnson User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:11.0) Gecko/20120327 Thunderbird/11.0.1 MIME-Version: 1.0 To: cygwin AT cygwin DOT com Subject: Re: cygstart doesn't handle question marks in mailto URLs References: <4F75B4D7 DOT 8060407 AT cornell DOT edu> <4F75B89A DOT 8050301 AT cs DOT utoronto DOT ca> <20120330151432 DOT GR30721 AT calimero DOT vinschen DOT de> In-Reply-To: <20120330151432.GR30721@calimero.vinschen.de> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-IsSubscribed: yes Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com On 30/03/2012 11:14 AM, Corinna Vinschen wrote: > On Mar 30 09:43, Ryan Johnson wrote: >> On 30/03/2012 9:27 AM, Ken Brown wrote: >>> If I type `cygstart mailto:recipient?subject=subject' at a Cygwin >>> bash prompt, I expect my default Windows mail program to start an >>> outgoing message with `recipient' as recipient and `subject' as >>> subject. (This is what happens if I type the same URL into a >>> `Start Menu -> Run' box.) What happens instead is that >>> `recipient?subject=subject' shows up as the recipient, with the >>> question mark replaced by something unprintable, and the subject >>> is blank. >>> >>> Is this a bug in cygstart, or am I misunderstanding something? >> I suspect a bug in the way cygwin1.dll handles conversion from unix- >> to windows-style paths. > http://cygwin.com/acronyms/#IAFNAB > > http://cygwin.com/cygwin-ug-net/using-specialnames.html#pathnames-specialchars Makes sense... for files, but we're dealing with a URL here, so it *is* a bug IMO (but you're right, not a bug in cygwin's handling of windows-style paths). Cygstart knows it's dealing with a URL. It doesn't try to look for a file whose name starts with "mailto:", for example, nor does it escape the otherwise-forbidden ':' character. The proper behavior would either enforce the forbidden character set and escaping methods that apply to URLs, or else pass the argument through unmodified and let Windows (or the target app) complain if there's a problem. Either way, though, "file:" urls would have to be a special case. And yes, SHTDI, and TSINM (that somebody is not me). Ryan -- 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