Open Bug 909679 Opened 12 years ago Updated 3 years ago

Spaces in URIs get converted to %2520

Categories

(Core :: DOM: Navigation, defect)

23 Branch
x86
Windows 7
defect

Tracking

()

UNCONFIRMED

People

(Reporter: cud, Unassigned)

References

()

Details

User Agent: Mozilla/5.0 (Windows NT 6.1; rv:23.0) Gecko/20100101 Firefox/23.0 (Beta/Release) Build ID: 20130814063812 Steps to reproduce: Put up a Web object like test.pdf that has a clickable object in it whose URI contains a space (%20), like test%20me.mp3, the clickable object referenced in an HTML link, e.g. <a href="http://site/test.pdf:"></a>. Actual results: FF will not find the clicked object (404 error), because the %20 in its URI is double-escaped to %2520 when passed. I.e., the percent sign is converted to %25, and then 20 is added to it, generating a clobbered entity, disabling the passed URI. Expected results: The object should be loaded as encoded to the associated application in the O/S, with the space as %20 only. See the URI http://www.bachware.com/Helge-music/The Lord's Prayer.pdf in which there is a link to http://www.bachware.com/Helge-music/The%20Lord's%20Prayer/The%20Lord's%20Prayer.mp3, but its %20s are converted to %2520s by FF 23.01 when the link pointing to it is clicked on, so the file is not found. Looking at the .pdf file shows the code /URI (http://www.bachware.com/Helge-music/The%20Lord's%20Prayer/The%20Lord's%20Prayer.mp3) where the%20s are being double-escaped to %2520s. MSIE 10 passes the URI to the O/S correctly. So also does Opera 12.16. The containing HTML page hash is http://bachware.com/Helge-music/Scores.htm#LP, where works OK the directly linked <a The%20Lord's%20Prayer/The%20Lord's%20Prayer.mp3" title="Click to play &ldquo;The Lord's Prayer&rdquo;&copy;"> <img src="../Graphics/TCLEFICO.GIF" style="vertical-align: bottom;"></a> that calls it, also in the link in the later page, http://bachware.com/Helge-music/The%20Lord%27s%20Prayer/systems.htm. The problem is with a URI that calls an embedded object, in this case the pdf, that invokes the object whose URI has spaces. FF isn't passing on the spaces as specified, but double-escaping them, whereas MSIE and Opera do it correctly, and start the associated application.
Component: Untriaged → Shell Integration
Priority: -- → P1
When clicking on the embedded .mp3 link, FF reports: The requested URI /Helge-music/The%20Lord's%20Prayer/The%20Lord's%20Prayer.mp3 was not found on this server. But the address line shows the URI as http://www.bachware.com/Helge-music/The%2520Lord%27s%2520Prayer/The%2520Lord%27s%2520Prayer.mp3 This indicates that the URI was received properly by FF, but was clobbered internally, as described.
Component: Shell Integration → Location Bar
Priority: P1 → --
This is still on prod. All "%" in urls are replace by "%25" And there is also all " " replace by "%2520" instead of "%20".
Component: Location Bar → Document Navigation
Product: Firefox → Core
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.