Index: mojo/system/message_pipe.cc |
diff --git a/mojo/system/message_pipe.cc b/mojo/system/message_pipe.cc |
index 13776d3d76558f6261f90bd964c1ad3dfa6190d4..70ef246113a0ec138b39024b6dd048876ec2441f 100644 |
--- a/mojo/system/message_pipe.cc |
+++ b/mojo/system/message_pipe.cc |
@@ -155,12 +155,15 @@ void MessagePipe::ConvertLocalToProxy(unsigned port) { |
bool is_peer_open = !!endpoints_[GetPeerPort(port)]; |
- // TODO(vtl): Hopefully this will work if the peer has been closed and when |
- // the peer is local. If the peer is remote, we should do something more |
- // sophisticated. |
- DCHECK(!is_peer_open || |
- endpoints_[GetPeerPort(port)]->GetType() == |
- MessagePipeEndpoint::kTypeLocal); |
+ // TODO(vtl): Allowing this case is a temporary hack. It'll set up a |
+ // |MessagePipe| with two proxy endpoints, which will then act as a proxy |
+ // (rather than trying to connect the two ends directly). |
+ DLOG_IF(WARNING, |
+ is_peer_open && |
+ endpoints_[GetPeerPort(port)]->GetType() != |
+ MessagePipeEndpoint::kTypeLocal) |
+ << "Direct message pipe passing across multiple channels not yet " |
+ "implemented; will proxy"; |
scoped_ptr<MessagePipeEndpoint> replacement_endpoint( |
new ProxyMessagePipeEndpoint( |