From 566bfcfc4b58042419f47c9cbbe5a55da888169a Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Sat, 1 Aug 2020 01:57:29 +0100 Subject: [PATCH] do ended client after we decide to block --- src/sse.rs | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/sse.rs b/src/sse.rs index e2e4ea73..9273cb36 100644 --- a/src/sse.rs +++ b/src/sse.rs @@ -35,13 +35,6 @@ impl Read for UpdateReader { |s| io::Error::new(io::ErrorKind::Other, anyhow!(s)); let mut ig = self.gref.lock().map_err(|_| em("poison"))?; - if (||{ - (*ig).gs.players.get(self.player)?; - let client = ig.clients.get_mut(self.client)?; - client.lastseen = Instant::now(); - Some(()) - })() == None { return Ok(0) } - let orig_wanted = orig_buf.len(); let mut buf = orig_buf.as_mut(); @@ -70,8 +63,16 @@ impl Read for UpdateReader { &self.to_send)?; self.to_send.try_increment().unwrap(); } + let cv = pu.get_cv(); + if (||{ + (*ig).gs.players.get(self.player)?; + let client = ig.clients.get_mut(self.client)?; + client.lastseen = Instant::now(); + Some(()) + })() == None { return Ok(0) } + loop { let generated = orig_wanted - buf.len(); if generated > 0 { -- 2.30.2