Fix infinite loop in read_one (#910)

* Fix infinite loop in read_one

* Also fix request_respond
This commit is contained in:
Pierre Krieger 2019-02-11 14:02:29 +01:00 committed by GitHub
parent 4fe77e8658
commit 21810e46bd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -219,6 +219,7 @@ where
len_buf, len_buf,
max_size, max_size,
}; };
return Ok(Async::NotReady);
} }
} }
} }
@ -229,6 +230,7 @@ where
} }
Async::NotReady => { Async::NotReady => {
self.inner = ReadOneInner::ReadRest(inner); self.inner = ReadOneInner::ReadRest(inner);
return Ok(Async::NotReady);
} }
} }
} }
@ -376,6 +378,7 @@ where
} }
Async::NotReady => { Async::NotReady => {
self.inner = RequestResponseInner::Write(inner, max_size, then); 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::Ready(packet) => return Ok(Async::Ready(packet)),
Async::NotReady => { Async::NotReady => {
self.inner = RequestResponseInner::Read(inner); self.inner = RequestResponseInner::Read(inner);
return Ok(Async::NotReady);
} }
}, },
RequestResponseInner::Poisoned => panic!(), RequestResponseInner::Poisoned => panic!(),