Closed Bug 231032 Opened 21 years ago Closed 20 years ago

mailto: tag does not work with unescaped spaces (e.g., in subject)

Categories

(Thunderbird :: Message Compose Window, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED
Thunderbird1.1

People

(Reporter: terry.sanderson, Assigned: mscott)

References

Details

(Whiteboard: fixed-aviary1.0)

Attachments

(1 file, 1 obsolete file)

User-Agent:       Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; MSOCD; Q312461; .NET CLR 1.1.4322)
Build Identifier: Thunderbird 0.4 (20031205)

Trying to use Thunderbird to reply to an email address on a web page. When I 
put the cursor over the email address, the status bar shows:

mailto:user@company.com?subject=blah blah blah

Clicking on the email address, the Thunderbird window comes to the foreground 
but a compose window does not appear. I have confirmed that if it is a simple 
mailto: with no subject option, the compose window appears.

TerryS.

Reproducible: Always

Steps to Reproduce:
1. Find a mailto: tag with a subject option
2. Click on the email address
3.

Actual Results:  
No compose window appears.
Further information:

This appears to be intermittent. Some mailto: tags with the subject option 
work, like:

<A HREF="mailto:hireca@aol.com?subject=Project%20Manager-
Intermediate">hireca@aol.com</A>

works, but:

<A HREF="mailto:employ@mcmaster.ca?subject=job application from Workopolis.com 
for UNDERGRADUATE LABORATORY SUPERVISOR">employ@mcmaster.ca</A>

doesn't )Could it be the length of the subject line?)

TerryS.
I have the same problem. But it's only for mailto-Links with spaces in the
subject. Other mailto-Links are ok.

Reproducible: Always
I have a similar problem, but it only occurs if there is a space character in
the subject. Using a %20 in place of the space is a workaround...
Yes, you are right %20 is a workaround. But most of the links in the internet
don't have that workaround :(
I get this too. Windows XP, Build Mozilla Thunderbird 0.5a (20040120)
Bug still present in Mozilla Thunderbird 0.5b (20040201) under Windows 2000.
I see this on Mac OS X 10.3 also (using Firefox as default browser and
Thunderbird as default mailer).   Quite annoying.  :-)
Status: UNCONFIRMED → NEW
Ever confirmed: true
OS: Windows 2000 → All
Hardware: PC → All
I also see the same bug.
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.6)
Gecko/20040206 Firefox/0.8
Build: Mozilla Thunderbird 0.5 (20040207)

Two things to add:

*) appearently having thunderbird closed when clicking the link (so that it must
start thunderbird) appears to improve results somewhat.  The compose window does
open.

*) mailto:myname@example.com?subject=UID%202922,%20Rift
Escapes,%20%20is%20in%20progress

this mailto contains a single space (between 'Rift' and 'Escapes').  If you
click this link when Thunderbird is closed, the compose window will open. 
However, the subject line will contain 'UID 2922, Rift'.  It is incomplete.

Same problem here - but when Thunderbird is closed, it loads for only a second
or so and then exits again. No window is displayed.

mailto:redactie@nu.nl?subject=Reactie op artikel: PvdA wil diplomaplicht
invoeren  ( http://nu.nl/news.jsp?n=302750 )

Apparently spaces in the subject tag cause the problem.
Under the applicable RFCs, the use of spaces in URIs (including mailto: URIs) is
invalid unless encoded as %20.
(In reply to comment #10)
> Under the applicable RFCs, the use of spaces in URIs (including mailto: URIs) is
> invalid unless encoded as %20.

Seconding what Dan said.

http://www.rfc-editor.org/rfc/rfc1738.txt

"Thus, only alphanumerics, the special characters $-_.+!*'(),, and reserved
characters used for their reserved purposes may be used unencoded within a URL."

Dollar sign, hyphen, underscore, period, plus, exclamation point, asterisk,
apostrophe, left and right parentheses, and comma are the only non-alphanumeric
characters allowed.

It's true that many clients support the space. I don't know whether this could
be supported without breaking other standards. If it could be added without
mucking up anything else, that would improve user-friendliness.
Summary: mailto: tag does not work with ?subject option → mailto: tag does not work with unescaped spaces (e.g., in subject)
INVALID. Spaces should always be escaped in URIs.
Status: NEW → RESOLVED
Closed: 20 years ago
Resolution: --- → INVALID
Very strange. Since I use Firefox 0.8 and Thunderbird 0.6 it work for me. Look
at http://www.fasse.info/test.html The first link is with %20 and the second
only has the spaces.

But I don't know if the problem is solved by Firefox or Thunderbird !?!
Can someone confirm this?
I have created enhancement request 243381.
re-opening. I get too many customer complaints about not handling this case even
if it is bogus.
Status: RESOLVED → REOPENED
Resolution: INVALID → ---
Target Milestone: --- → Thunderbird0.7
*** Bug 243381 has been marked as a duplicate of this bug. ***
the first failure point is here:

http://lxr.mozilla.org/seamonkey/source/toolkit/xre/nsNativeAppSupportWin.cpp#1656

where the xre's generic command line handler parses the arguments and builds
them up into command line arguments. Arguments are delimited by space. So:

thunderbird.exe -compose mailto:foo.com

gets turned into 3 command line arguments which the command line service then
anaylzes. If the mailto url has raw spaces in it we end up creating additional
command line arguments (one for each 'naked' word after the mailto) which we
later have no idea how to handle.

This is going to be pretty tricky to generically make this work in the command
line service
so, you might just have to assume if the command line arg is -compose, and you
get ?subject, there are no more command line args. Not sure I see any other way
around it...I suppose you could look for -char command lines args after, but I'm
not sure they're really valid in mailto urls, because mailto urls need to be
fairly generic...
Attached patch the fix (obsolete) — Splinter Review
could it really be this easy?
yes it was too good to be true. This fixes it if Thunderbird is already running
but not when thunderbird needs started.
Attachment #148552 - Flags: superreview+
fixed on the aviary 1.0 branch and the old M4 branch. Leaving open for landing
on the trunk.
Status: REOPENED → ASSIGNED
Whiteboard: fixed-aviary1.0
this bug is left open 'cause i haven't landed it on the trunk yet. not a 0.7
stopper since it's already in 0.7
Target Milestone: Thunderbird0.7 → Thunderbird0.8
this is already fixed in the 1.0 branch. I need to get it reviewed for the trunk
by the right folks. 
Target Milestone: Thunderbird0.8 → Thunderbird0.9
Target Milestone: Thunderbird0.9 → Thunderbird1.1
this is now fixed on the trunk too
Status: ASSIGNED → RESOLVED
Closed: 20 years ago20 years ago
Resolution: --- → FIXED
I can't believe we're doing this. Why can't we just fix the client side to make
sure the URL is escaped properly? Or are we talking about non-moz clients?
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: