Index: content/common/child_process_host_impl.cc |
diff --git a/content/common/child_process_host_impl.cc b/content/common/child_process_host_impl.cc |
index 4e7b8621a86680bb06e3d4bc4361228b29bb36ce..efdd925a62567da623952532d749a643eee0d50c 100644 |
--- a/content/common/child_process_host_impl.cc |
+++ b/content/common/child_process_host_impl.cc |
@@ -270,7 +270,9 @@ bool ChildProcessHostImpl::OnMessageReceived(const IPC::Message& msg) { |
} |
void ChildProcessHostImpl::OnChannelConnected(int32 peer_pid) { |
- if (!base::OpenPrivilegedProcessHandle(peer_pid, &peer_handle_)) { |
+ if (!peer_handle_ && |
+ !base::OpenPrivilegedProcessHandle(peer_pid, &peer_handle_) && |
+ !(peer_handle_ = delegate_->GetHandle())) { |
NOTREACHED(); |
} |
opening_channel_ = false; |