Bug 28885

Summary: Invalid parsing of backslash in url function
Product: WebKit Reporter: Erik Arvidsson <arv>
Component: CSSAssignee: Nobody <webkit-unassigned>
Status: RESOLVED WORKSFORME    
Severity: Normal CC: abarth, ap, glenn, josimjamalpur, seikwon.kim
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: PC   
OS: OS X 10.5   
Bug Depends on:    
Bug Blocks: 37641    
Attachments:
Description Flags
test example - worksforme none

Erik Arvidsson
Reported 2009-09-01 12:16:41 PDT
According to http://www.w3.org/TR/css3-values/#uris Parentheses, commas, whitespace characters, single quotes (') and double quotes (") appearing in a URI must be escaped with a backslash: '\(', '\)', '\,'. We unescape those escaped characters but the unescaping of \\ at the end of the url is broken. The following works url("http://digg.com/?\\abc") but this does not work url("http://digg.com/?\\") it never even tries to do a network request.
Attachments
test example - worksforme (673 bytes, application/xhtml+xml)
2012-09-27 20:47 PDT, Glenn Adams
no flags
Alexey Proskuryakov
Comment 1 2010-02-16 19:08:32 PST
See also: bug 18604.
Glenn Adams
Comment 2 2012-09-27 20:01:42 PDT
(In reply to comment #1) > See also: bug 18604. I closed bug 18604 as invalid.
Glenn Adams
Comment 3 2012-09-27 20:47:52 PDT
Created attachment 166135 [details] test example - worksforme
Glenn Adams
Comment 4 2012-09-27 20:50:29 PDT
the just attached test shows there is no problem with escaped backslash at end of url(), both in quoted and unquoted forms; verified (manually) that both perform network access on URL with single backslash at end (after unescape)
Glenn Adams
Comment 5 2012-09-27 20:56:49 PDT
(In reply to comment #4) > the just attached test shows there is no problem with escaped backslash at end of url(), both in quoted and unquoted forms; verified (manually) that both perform network access on URL with single backslash at end (after unescape) tested in 537+ mac-mountainlion
Note You need to log in before you can comment on or make changes to this bug.