From b7b85c028bfae7ee9d1691b1f6a2ceeaa9d3faae Mon Sep 17 00:00:00 2001 From: Dirkjan Ochtman Date: Sat, 24 Nov 2018 19:57:34 +0100 Subject: [PATCH] Don't create ConnectionLost events in handle_connected_inner() This isn't needed, because handle_connected() will create them when an error is returned from handle_connected_inner(). --- quinn-proto/src/connection.rs | 25 ++++++------------------- 1 file changed, 6 insertions(+), 19 deletions(-) diff --git a/quinn-proto/src/connection.rs b/quinn-proto/src/connection.rs index 9292a149a..c65e00948 100644 --- a/quinn-proto/src/connection.rs +++ b/quinn-proto/src/connection.rs @@ -1283,26 +1283,13 @@ impl Connection { // Forget about unacknowledged handshake packets self.handshake_cleanup(&ctx.config); } - let closed = match self.process_payload(ctx, now, number, packet.payload.into()) { - Ok(closed) => closed, - Err(e) => { - ctx.events - .push_back((self.handle, Event::ConnectionLost { reason: e.into() })); - return Err(e.into()); - } - }; - - if let Err(e) = self.drive_tls() { - ctx.events - .push_back((self.handle, Event::ConnectionLost { reason: e.into() })); - Err(e.into()) + let closed = self.process_payload(ctx, now, number, packet.payload.into())?; + self.drive_tls()?; + Ok(if closed { + State::Draining } else { - Ok(if closed { - State::Draining - } else { - State::Established - }) - } + State::Established + }) } State::HandshakeFailed(state) => { for frame in frame::Iter::new(packet.payload.into()) {