Revert making HandleWatcher block until no longer waiting on pipe (r285266).

That change causes any thread that uses HandleWatcher to block and wait on the watcher thread (which uses mojo message pump). With the new EDK, this causes hangs on shutdown if we share the IO thread between chrome and the EDK, since if the destruction of HandleWatcher happens on the IO thread, the handle watcher's mojo pump will never wake up (since the IO thread is blocked, so it doesn't get to deliver the control byte read event to MojoMessagePump). Since the EDK already handles the case fine by returning error codes, no need to make threads block.

BUG=394886, 561803

Review URL: https://codereview.chromium.org/1475983004

Cr-Commit-Position: refs/heads/master@{#362190}


CrOS-Libchrome-Original-Commit: daeca3e623dbefaa485889eff9f7712e0f572d51
6 files changed
tree: a4c6274119bd9e469df50ca8a4fb1f137b7a4b87
  1. base/
  2. build/
  3. components/
  4. dbus/
  5. device/
  6. ipc/
  7. mojo/
  8. testing/
  9. third_party/
  10. ui/