[Webkit-unassigned] [Bug 137302] location.href is not updated on a redirect with a custom protocol

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Fri Oct 31 03:43:18 PDT 2014


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

--- Comment #17 from Daniel <danielo at opera.com> ---
I've made the minor updates you've asked, and added some comments.

> Honestly I don't understand why you remove the assertion if you cannot find a case that hits it...

Of course, my new TC from TestWebKitAPI is affected. I've updated the comment to reflect that. I just thought that a change in WebCore must have a TC in WebCore.

> It is not clear to me why this is correct. NSURLConnection never calls connectionDidFinishLoading: for redirection? This interface should behave the same.

It's not the same. Although NSURLConnection stays on the same instance for doing redirects, it creates a new NSURLProtocol instance under the hood for each redirect. Each redirection gets a new NSURLProtocol in the web process, and makes a new startLoading call to the UI process. In respond to this in the UI process it creates a new instance of WKCustomProtocolLoader, and a new NSURLConnection. So the old NSURLConnection is not reused, which means that after a redirect it needs to be released. This is the purpose of this line.

Keep in mind that we are working with 2 NSURLConnection instances here. One is in the web process (somewhere in the networking code), and that's kept and reused. Another one is in the UI process (a part of WKCustomProtocolLoader), which is released after a redirect and not reused.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20141031/c260a9e8/attachment-0002.html>


More information about the webkit-unassigned mailing list