cygstart doesn't handle question marks in mailto URLs

Ryan Johnson ryan.johnson@cs.utoronto.ca
Fri Mar 30 16:05:00 GMT 2012


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



More information about the Cygwin mailing list