summaryrefslogtreecommitdiffstats
path: root/chrome/renderer
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/renderer')
-rw-r--r--chrome/renderer/webplugin_delegate_proxy.cc7
1 files changed, 7 insertions, 0 deletions
diff --git a/chrome/renderer/webplugin_delegate_proxy.cc b/chrome/renderer/webplugin_delegate_proxy.cc
index 1274d08..e07368d 100644
--- a/chrome/renderer/webplugin_delegate_proxy.cc
+++ b/chrome/renderer/webplugin_delegate_proxy.cc
@@ -220,6 +220,13 @@ bool WebPluginDelegateProxy::Initialize(const GURL& url, char** argn,
}
#if defined(OS_POSIX)
+ if (channel_handle.name.empty()) {
+ // We got an invalid handle. Possibly the plugin process is stale? In any
+ // case, don't try to connect to it, the empty name represents the host
+ // channel, and connecting to it again does bad things.
+ return false;
+ }
+
// If we received a ChannelHandle, register it now.
if (channel_handle.socket.fd >= 0)
IPC::AddChannelSocket(channel_handle.name, channel_handle.socket.fd);