Index: ipc/mojo/ipc_message_pipe_reader.cc |
diff --git a/ipc/mojo/ipc_message_pipe_reader.cc b/ipc/mojo/ipc_message_pipe_reader.cc |
index 61b36f6f384531dd68e0d7358f59889e5dca00d0..cfa53f30e6aacdf32e71748e0cefe47817c0fbe4 100644 |
--- a/ipc/mojo/ipc_message_pipe_reader.cc |
+++ b/ipc/mojo/ipc_message_pipe_reader.cc |
@@ -161,8 +161,9 @@ void MessagePipeReader::ReadMessagesThenWait() { |
// If can fail with |MOJO_RESULT_ALREADY_EXISTS| otherwise. |
// Also, we don't use MOJO_HANDLE_SIGNAL_WRITABLE here, expecting buffer in |
// MessagePipe. |
- MojoResult result = |
- async_waiter_->Wait(pipe_.get().value(), MOJO_HANDLE_SIGNAL_READABLE); |
+ MojoResult result = async_waiter_->Wait( |
+ pipe_.get().value(), |
+ MOJO_HANDLE_SIGNAL_READABLE | MOJO_HANDLE_SIGNAL_PEER_CLOSED); |
viettrungluu
2015/03/24 21:03:25
So if it gets signaled due to "peer closed" ... th
|
// If the result is |MOJO_RESULT_ALREADY_EXISTS|, there could be messages |
// that have been arrived after the last |ReadAvailableMessages()|. |
// We have to consume then and retry in that case. |