Regression(ProcessPrewarming) Assertion hit in NetworkProcessProxy destructor
authorcdumez@apple.com <cdumez@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 17 Nov 2018 06:46:55 +0000 (06:46 +0000)
committercdumez@apple.com <cdumez@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 17 Nov 2018 06:46:55 +0000 (06:46 +0000)
commitdc313628af1aa52dd2479727f2e2c5125f6e57fc
tree895905841487d0fff4dd5bfbf42551cacc6039ff
parentb0815f38f1d8c40764f221f3d4cd6080d9acb303
Regression(ProcessPrewarming) Assertion hit in NetworkProcessProxy destructor
https://bugs.webkit.org/show_bug.cgi?id=191800

Reviewed by Ryosuke Niwa.

Make sure the NetworkProcessProxy destructor calls its remaining m_pendingConnectionReplies
completion handlers to avoid hitting an assertion in the CompletionHandler destructor.

Prewarmed WebProcess do not keep the ProcessPool alive and thus not the NetworkProcessProxy
either. As a result, it is possible for NetworkProcessProxy to have pending connection
requests from those prewarmed processes when it is destroyed. Similar story for the
suspended page processes when they are destroyed.

* UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::~NetworkProcessProxy):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@238343 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WebKit/ChangeLog
Source/WebKit/UIProcess/Network/NetworkProcessProxy.cpp