The WebContent processes relies on getting the Launch Services database from the Networking process. We should make sure there always is a Networking process to provide the database.
Created attachment 451981 [details] Patch
Created attachment 451982 [details] Patch
Created attachment 451983 [details] Patch
Created attachment 451985 [details] Patch
Created attachment 452025 [details] Patch
<rdar://problem/88993803>
Created attachment 452113 [details] Patch
Created attachment 452124 [details] Patch
Comment on attachment 452124 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=452124&action=review > Tools/TestWebKitAPI/Tests/WebKitCocoa/NetworkProcess.mm:-155 > - while ([WKWebsiteDataStore _defaultNetworkProcessExists]) This seems like a bad regression. It is important for the network process to go away once it is no longer needed. Otherwise, any app that would use a WKWebView to display a simple help page once would carry an extra process and all its associated memory, forever. You are essentially disabling this important API test and I don’t think it is ok.
(In reply to Chris Dumez from comment #9) > Comment on attachment 452124 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=452124&action=review > > > Tools/TestWebKitAPI/Tests/WebKitCocoa/NetworkProcess.mm:-155 > > - while ([WKWebsiteDataStore _defaultNetworkProcessExists]) > > This seems like a bad regression. It is important for the network process to > go away once it is no longer needed. Otherwise, any app that would use a > WKWebView to display a simple help page once would carry an extra process > and all its associated memory, forever. > Will it go away, though? There will still be a reference to the NetworkProcessProxy from a Website data store, preventing the Network process form exiting, I believe. I have checked the test above in the debugger, and the Network process does not exit when spinning the run loop after the test (also without the code change in this patch). Or perhaps I am mistaken? Perhaps we should reset all references to the Network process proxy in the remaining Website data stores when the last Web process pool is deleted? I think that would make the Network process exit in the above test.
Created attachment 452248 [details] Patch
Created attachment 452361 [details] Patch
Comment on attachment 452361 [details] Patch r=me
Comment on attachment 452361 [details] Patch Thanks for reviewing!
Committed r290521 (247804@main): <https://commits.webkit.org/247804@main> All reviewed patches have been landed. Closing bug and clearing flags on attachment 452361 [details].