Permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Browse files
Have IPC::Connection::Client objects consistently invalidate the conn…
…ection when destroyed https://bugs.webkit.org/show_bug.cgi?id=177708 Reviewed by Anders Carlsson. I ran into an intermittent crash when running regression tests. It looked like a connection client was being called after it was destroyed. I did an audit of the all the connection clients to make sure they all invalidate their connection before they are destroyed. * NetworkProcess/NetworkConnectionToWebProcess.cpp: (WebKit::NetworkConnectionToWebProcess::~NetworkConnectionToWebProcess): Invalidate the connection since this object opened the connection. There is no obvious guarantee that the connection will already be invalid when this is destroyed. * StorageProcess/StorageToWebProcessConnection.cpp: (WebKit::StorageToWebProcessConnection::~StorageToWebProcessConnection): Ditto. * UIProcess/Plugins/PluginProcessProxy.cpp: (WebKit::PluginProcessProxy::~PluginProcessProxy): Ditto. * WebProcess/Network/NetworkProcessConnection.cpp: (WebKit::NetworkProcessConnection::~NetworkProcessConnection): Ditto. * WebProcess/Storage/WebToStorageProcessConnection.cpp: (WebKit::WebToStorageProcessConnection::~WebToStorageProcessConnection): Ditto. * StorageProcess/StorageToWebProcessConnection.h: Derive privately rather than publicly from IPC::Connection::Client because we can, and this means we don't have to study quite as much code to understand how this is used as a connection client. * WebProcess/Databases/IndexedDB/WebIDBConnectionToServer.h: Ditto. * WebProcess/Storage/WebToStorageProcessConnection.h: Ditto. * WebProcess/WebPage/WebInspector.h: Ditto. * WebProcess/WebPage/WebInspectorUI.h: Ditto. * WebProcess/Databases/IndexedDB/WebIDBConnectionToServer.cpp: (WebKit::WebIDBConnectionToServer::WebIDBConnectionToServer): Added a comment about a reference cycle cycle leading to a leak that I believe exists here. Canonical link: https://commits.webkit.org/193968@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@222684 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- Loading branch information
Showing
with
50 additions
and 6 deletions.
- +36 −0 Source/WebKit/ChangeLog
- +1 −0 Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp
- +1 −1 Source/WebKit/StorageProcess/StorageToWebProcessConnection.cpp
- +1 −1 Source/WebKit/StorageProcess/StorageToWebProcessConnection.h
- +3 −0 Source/WebKit/UIProcess/Plugins/PluginProcessProxy.cpp
- +2 −0 Source/WebKit/WebProcess/Databases/IndexedDB/WebIDBConnectionToServer.cpp
- +1 −1 Source/WebKit/WebProcess/Databases/IndexedDB/WebIDBConnectionToServer.h
- +1 −0 Source/WebKit/WebProcess/Network/NetworkProcessConnection.cpp
- +1 −0 Source/WebKit/WebProcess/Storage/WebToStorageProcessConnection.cpp
- +1 −1 Source/WebKit/WebProcess/Storage/WebToStorageProcessConnection.h
- +1 −1 Source/WebKit/WebProcess/WebPage/WebInspector.h
- +1 −1 Source/WebKit/WebProcess/WebPage/WebInspectorUI.h
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters