From 21810e46bd5e85cdef5438c2e7edc8313de9eae3 Mon Sep 17 00:00:00 2001 From: Pierre Krieger Date: Mon, 11 Feb 2019 14:02:29 +0100 Subject: [PATCH] Fix infinite loop in read_one (#910) * Fix infinite loop in read_one * Also fix request_respond --- core/src/upgrade/transfer.rs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/core/src/upgrade/transfer.rs b/core/src/upgrade/transfer.rs index 6ea678a2..5bc6d5a8 100644 --- a/core/src/upgrade/transfer.rs +++ b/core/src/upgrade/transfer.rs @@ -219,6 +219,7 @@ where len_buf, max_size, }; + return Ok(Async::NotReady); } } } @@ -229,6 +230,7 @@ where } Async::NotReady => { self.inner = ReadOneInner::ReadRest(inner); + return Ok(Async::NotReady); } } } @@ -376,6 +378,7 @@ where } Async::NotReady => { self.inner = RequestResponseInner::Write(inner, max_size, then); + return Ok(Async::NotReady); } } } @@ -383,6 +386,7 @@ where Async::Ready(packet) => return Ok(Async::Ready(packet)), Async::NotReady => { self.inner = RequestResponseInner::Read(inner); + return Ok(Async::NotReady); } }, RequestResponseInner::Poisoned => panic!(),