fix(http): fix encoding when buffer is full

This commit is contained in:
Sean McArthur
2017-07-17 11:19:32 -07:00
parent d6da3f7b40
commit fc5b9cce31
3 changed files with 12 additions and 2 deletions

View File

@@ -130,7 +130,12 @@ impl<T: AsyncRead + AsyncWrite> Buffered<T> {
impl<T: Write> Write for Buffered<T> {
fn write(&mut self, data: &[u8]) -> io::Result<usize> {
Ok(self.write_buf.buffer(data))
let n = self.write_buf.buffer(data);
if n == 0 {
Err(io::Error::from(io::ErrorKind::WouldBlock))
} else {
Ok(n)
}
}
fn flush(&mut self) -> io::Result<()> {