From 81bc845bcf444139e8eb6868f661fe2b7d1a8b7b Mon Sep 17 00:00:00 2001 From: Steven Fackler Date: Wed, 31 Jul 2019 19:44:16 -0700 Subject: [PATCH] Simplify logic a bit --- tokio-postgres/src/connection.rs | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/tokio-postgres/src/connection.rs b/tokio-postgres/src/connection.rs index b7b5fa17..6a9ae27a 100644 --- a/tokio-postgres/src/connection.rs +++ b/tokio-postgres/src/connection.rs @@ -198,6 +198,14 @@ where return Ok(false); } + if let Poll::Pending = Pin::new(&mut self.stream) + .poll_ready(cx) + .map_err(Error::io)? + { + trace!("poll_write: waiting on socket"); + return Ok(false); + } + let request = match self.poll_request(cx) { Poll::Ready(Some(request)) => request, Poll::Ready(None) if self.responses.is_empty() && self.state == State::Active => { @@ -220,15 +228,6 @@ where } }; - if let Poll::Pending = Pin::new(&mut self.stream) - .poll_ready(cx) - .map_err(Error::io)? - { - trace!("poll_write: waiting on socket"); - self.pending_request = Some(request); - return Ok(false); - } - match request { RequestMessages::Single(request) => { Pin::new(&mut self.stream)