[webkit-changes] [WebKit/WebKit] 3d791e: Running API tests often logs "Error while launchin...

Chris Dumez noreply at github.com
Thu May 4 16:38:10 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 3d791e9725a598f909da5b285740d2ac468df0b9
      https://github.com/WebKit/WebKit/commit/3d791e9725a598f909da5b285740d2ac468df0b9
  Author: Chris Dumez <cdumez at apple.com>
  Date:   2023-05-04 (Thu, 04 May 2023)

  Changed paths:
    M Source/WebKit/UIProcess/WebProcessProxy.cpp
    M Source/WebKit/UIProcess/WebProcessProxy.h

  Log Message:
  -----------
  Running API tests often logs "Error while launching com.apple.WebKit.Networking: Connection invalid"
https://bugs.webkit.org/show_bug.cgi?id=256278
rdar://108866781

Reviewed by Alex Christensen, Sihui Liu and Per Arne Vollan.

Go via the WebsiteDataStore to access the NetworkProcessProxy, like we usually
do now that the NetworkProcessProxy is owned by the WebsiteDataStore. The code
was calling `NetworkProcessProxy::ensureDefaultNetworkProcess()` directly,
which would construct a NetworkProcessProxy and destroy it right away since
it was not holding on to the RefPtr returned by ensureDefaultNetworkProcess().

In the case where we don't have a data store (prewarmed WebProcesss case), we
stash the NetworkProcess in a RefPtr data member to keep it alive until a
website data store gets assigned (at which point we transfer ownership to the
data store).

* Source/WebKit/UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::didFinishLaunching):

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




More information about the webkit-changes mailing list