diff --git a/Source/WebKit/ChangeLog b/Source/WebKit/ChangeLog index 4383550e8082..026e18736215 100644 --- a/Source/WebKit/ChangeLog +++ b/Source/WebKit/ChangeLog @@ -1,3 +1,21 @@ +2017-08-23 Chris Dumez + + Regression(r221059): NetworkDataTask::didReceiveResponse() should not use PolicyUse for HTTP/0.9 + https://bugs.webkit.org/show_bug.cgi?id=175872 + + Reviewed by Daniel Bates. + + r221059 was calling the ResponseCompletionHandler with {} which ended up being + PolicyUse. Since this is an error case and do not want to receive the data, it + makes more sense to use PolicyIgnore instead. There should not be a behavior + change on WebKit side though since we are cancelling the load right after + calling the completion handler anyway. + + Tests under http/tests/security/http-0.9/ are still passing. + + * NetworkProcess/NetworkDataTask.cpp: + (WebKit::NetworkDataTask::didReceiveResponse): + 2017-08-22 Chris Dumez Introduce a new CompletionHandler type and use it for NetworkDataTaskClient's completion handlers to help catch bugs diff --git a/Source/WebKit/NetworkProcess/NetworkDataTask.cpp b/Source/WebKit/NetworkProcess/NetworkDataTask.cpp index a033dc4a48ec..eaae3da8e8c3 100644 --- a/Source/WebKit/NetworkProcess/NetworkDataTask.cpp +++ b/Source/WebKit/NetworkProcess/NetworkDataTask.cpp @@ -103,7 +103,7 @@ void NetworkDataTask::didReceiveResponse(ResourceResponse&& response, ResponseCo auto url = response.url(); std::optional port = url.port(); if (port && !isDefaultPortForProtocol(port.value(), url.protocol())) { - completionHandler({ }); + completionHandler(PolicyIgnore); cancel(); m_client->didCompleteWithError({ String(), 0, url, "Cancelled load from '" + url.stringCenterEllipsizedToLength() + "' because it is using HTTP/0.9." }); return;