Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: aebc0351b4ab94efb0b2122ceb28425c36987096
      
https://github.com/WebKit/WebKit/commit/aebc0351b4ab94efb0b2122ceb28425c36987096
  Author: Alex Christensen <achristen...@apple.com>
  Date:   2024-06-27 (Thu, 27 Jun 2024)

  Changed paths:
    M Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp
    M Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.h
    M Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.messages.in
    M Source/WebKit/NetworkProcess/NetworkSession.h
    M Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.h
    M Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm
    M Source/WebKit/Scripts/webkit/messages.py
    M Source/WebKit/Shared/Authentication/AuthenticationManager.h
    M Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm
    M Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivate.h
    M Source/WebKit/UIProcess/WebPageProxy.cpp
    M Source/WebKit/UIProcess/WebPageProxy.h
    M Source/WebKit/WebProcess/WebPage/WebPage.cpp
    M Source/WebKit/WebProcess/WebPage/WebPage.h
    M Source/WebKit/WebProcess/WebPage/WebPage.messages.in
    M Tools/TestWebKitAPI/Tests/WebKitCocoa/LoadAndDecodeImage.mm

  Log Message:
  -----------
  Fix some issues with WKWebView._loadAndDecodeImage
https://bugs.webkit.org/show_bug.cgi?id=275922
rdar://130624565

Reviewed by Tim Horton.

The biggest issue was that all https requests would fail during the TLS 
handshake.
That's not ideal.  Fix this by using NetworkDataTaskCocoa instead of 
NSURLSession's
dataTaskWithRequest:completionHandler and collect the data ourselves.

Another issue was there was no way to specify a maximum number of bytes to 
receive
from the network.  Since we are using NetworkDataTaskCocoa we can do this now 
too.

* Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp:
(WebKit::NetworkConnectionToWebProcess::loadImageForDecoding):
* Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.h:
* Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.messages.in:
* Source/WebKit/NetworkProcess/NetworkSession.h:
(WebKit::NetworkSession::loadImageForDecoding):
* Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.h:
* Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm:
(-[WKNetworkSessionDelegate 
URLSession:task:didReceiveChallenge:completionHandler:]):
(WebKit::NetworkSessionCocoa::loadImageForDecoding):
* Source/WebKit/Scripts/webkit/messages.py:
(headers_for_type):
* Source/WebKit/Shared/Authentication/AuthenticationManager.h:
* Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView 
_loadAndDecodeImage:constrainedToSize:maximumBytesFromNetwork:completionHandler:]):
(-[WKWebView _loadAndDecodeImage:constrainedToSize:completionHandler:]): 
Deleted.
* Source/WebKit/UIProcess/API/Cocoa/WKWebViewPrivate.h:
* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::loadAndDecodeImage):
* Source/WebKit/UIProcess/WebPageProxy.h:
* Source/WebKit/WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::loadAndDecodeImage):
* Source/WebKit/WebProcess/WebPage/WebPage.h:
* Source/WebKit/WebProcess/WebPage/WebPage.messages.in:
* Tools/TestWebKitAPI/Tests/WebKitCocoa/LoadAndDecodeImage.mm:
(TestWebKitAPI::TEST(WebKit, LoadAndDecodeImage)):

Canonical link: https://commits.webkit.org/280420@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to