diff options
author | wez@chromium.org <wez@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-02-17 01:51:49 +0000 |
---|---|---|
committer | wez@chromium.org <wez@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-02-17 01:51:49 +0000 |
commit | 715029ee49dd1a614d43a12aa3d3ce68a48dad45 (patch) | |
tree | 8ad1a153631b9206c406c98d938f3a69c09ce829 /content/renderer/pepper_plugin_delegate_impl.cc | |
parent | 6238126602d3aa3108fd0c415d3958ce38edd469 (diff) | |
download | chromium_src-715029ee49dd1a614d43a12aa3d3ce68a48dad45.zip chromium_src-715029ee49dd1a614d43a12aa3d3ce68a48dad45.tar.gz chromium_src-715029ee49dd1a614d43a12aa3d3ce68a48dad45.tar.bz2 |
Fix TCPSocket_Private::Disconnect not to crash renderer if socket not connected.
Also fix UDPSocket_Private::Close similarly for un-bound sockets.
BUG=112517
Review URL: http://codereview.chromium.org/9325010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@122427 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/renderer/pepper_plugin_delegate_impl.cc')
-rw-r--r-- | content/renderer/pepper_plugin_delegate_impl.cc | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/content/renderer/pepper_plugin_delegate_impl.cc b/content/renderer/pepper_plugin_delegate_impl.cc index c18af57..ef046f3 100644 --- a/content/renderer/pepper_plugin_delegate_impl.cc +++ b/content/renderer/pepper_plugin_delegate_impl.cc @@ -1798,7 +1798,8 @@ void PepperPluginDelegateImpl::TCPSocketDisconnect(uint32 socket_id) { // can be called before // TCPSocketConnect/TCPSocketConnectWithNetAddress is called. render_view_->Send(new PpapiHostMsg_PPBTCPSocket_Disconnect(socket_id)); - tcp_sockets_.Remove(socket_id); + if (tcp_sockets_.Lookup(socket_id)) + tcp_sockets_.Remove(socket_id); } uint32 PepperPluginDelegateImpl::UDPSocketCreate() { @@ -1837,7 +1838,8 @@ void PepperPluginDelegateImpl::UDPSocketClose(uint32 socket_id) { // There are no DCHECK(udp_sockets_.Lookup(socket_id)) because it // can be called before UDPSocketBind is called. render_view_->Send(new PpapiHostMsg_PPBUDPSocket_Close(socket_id)); - udp_sockets_.Remove(socket_id); + if (udp_sockets_.Lookup(socket_id)) + udp_sockets_.Remove(socket_id); } int32_t PepperPluginDelegateImpl::ShowContextMenu( |