[Webkit-unassigned] [Bug 56328] LayoutTests/fast/filesystem/resolve-uri.html fails in Chromium, passes in DRT

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Mar 14 15:38:47 PDT 2011


https://bugs.webkit.org/show_bug.cgi?id=56328





--- Comment #6 from Adam Klein <adamk at chromium.org>  2011-03-14 15:38:47 PST ---
(In reply to comment #5)
> Yeah, sorry about enabling universal access for file URLs during testing.  We have that set that way because tons of tests expect it.
> 
> Is there an actual bug here, or just that the tests don't run correctly outside of DRT?  Many, many non-HTTP tests don't run correctly outside of DRT for this reason.

There is an actual bug here (the title of this bug is vague because I didn't know what the problem was, but wanted somewhere to post my findings).

The issue is that when we call SecurityOrigin::canRequest() in requestLocalFileSystemURI, URIs with trailing slashes are rejected.  This is due to SecurityOrigin::isLocal() being true for filesystem: URIs, combined with the rule that local directories should never be requestable (see the code snippet in my previous post). 

Now, it may or may not be a bug that directories aren't fetchable with, say, an iframe (there's been some discussion of this within the team).  But we certainly want to be able to _resolve_ directories, since that'll just return a DirectoryEntry which JS definitely can make use of.  I think the easiest fix here is to not check SecurityOrigin::canRequest, but instead do a simpler check for "resolvability", which I think should just be SecurityOrigin::isSameSchemeHostPort(SecurityOrigin::create(fileSystemURL)).  Does the latter seem reasonable?

That still won't let directory listings be requested via iframe or XMLHTTPRequest, so perhaps that needs a separate bug.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list