• andersca@apple.com's avatar
    2011-05-02 Anders Carlsson <andersca@apple.com> · 973282ea
    andersca@apple.com authored
            Reviewed by Sam Weinig.
    
            The web process locks up when the plug-in process crashes
            https://bugs.webkit.org/show_bug.cgi?id=59999
            <rdar://problem/8889303>
    
            Add a hash map from plug-in paths to CoreIPC connections to PluginProcessConnectionManager.
            Add PluginProcessConnectionManager::pluginProcessCrashed and make it look up the corresponding
            CoreIPC connection and call postConnectionDidCloseOnConnectionWorkQueue on it.
    
            * Platform/CoreIPC/Connection.cpp:
            (CoreIPC::Connection::postConnectionDidCloseOnConnectionWorkQueue):
            * Platform/CoreIPC/Connection.h:
            * WebProcess/Plugins/PluginProcessConnectionManager.cpp:
            (WebKit::PluginProcessConnectionManager::getPluginProcessConnection):
            (WebKit::PluginProcessConnectionManager::removePluginProcessConnection):
            (WebKit::PluginProcessConnectionManager::pluginProcessCrashed):
            * WebProcess/Plugins/PluginProcessConnectionManager.h:
            * WebProcess/WebProcess.cpp:
            (WebKit::WebProcess::pluginProcessCrashed):
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@85573 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    973282ea
WebProcess.cpp 28.1 KB