perf(http): reduce a copy when not using Chunked encoding

This commit is contained in:
Sean McArthur
2017-02-02 13:13:48 -08:00
parent b4e0057d2b
commit 027cb71b7b

View File

@@ -242,10 +242,14 @@ impl<T: Write + ::vecio::Writev> AtomicWrite for T {
*/ */
impl<T: Write> AtomicWrite for T { impl<T: Write> AtomicWrite for T {
fn write_atomic(&mut self, bufs: &[&[u8]]) -> io::Result<usize> { fn write_atomic(&mut self, bufs: &[&[u8]]) -> io::Result<usize> {
if bufs.len() == 1 {
self.write(bufs[0])
} else {
let vec = bufs.concat(); let vec = bufs.concat();
self.write(&vec) self.write(&vec)
} }
} }
}
//} //}
// an internal buffer to collect writes before flushes // an internal buffer to collect writes before flushes