This commit is contained in:
Alex Crichton 2016-11-22 13:07:01 -08:00
commit e970e9a79c

View File

@ -242,7 +242,7 @@ pub trait Codec {
/// This method will encode `msg` into the byte buffer provided by `buf`.
/// The `buf` provided is an internal buffer of the `Framed` instance and
/// will be written out when possible.
fn encode(&mut self, msg: Self::Out, buf: &mut Vec<u8>);
fn encode(&mut self, msg: Self::Out) -> Result<Vec<u8>, io::Error>;
}
/// A unified `Stream` and `Sink` interface to an underlying `Io` object, using
@ -319,7 +319,7 @@ impl<T: Io, C: Codec> Sink for Framed<T, C> {
}
}
self.codec.encode(item, &mut self.wr);
self.wr = self.codec.encode(item).unwrap();
Ok(AsyncSink::Ready)
}