From 548f21d92f2fcde469b1fbffa64e4ffd9c137ff0 Mon Sep 17 00:00:00 2001 From: Chris Hennick Date: Sun, 18 Jun 2023 13:41:17 -0700 Subject: [PATCH] Allow user to specify the output buffer size as well --- src/deflate/mod.rs | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/deflate/mod.rs b/src/deflate/mod.rs index 2e657eef..0d385690 100644 --- a/src/deflate/mod.rs +++ b/src/deflate/mod.rs @@ -59,13 +59,15 @@ impl Deflater for Deflaters { #[derive(Copy, Clone, Debug)] pub struct BufferedZopfliDeflater { iterations: NonZeroU8, - buffer_size: usize + input_buffer_size: usize, + output_buffer_size: usize } impl BufferedZopfliDeflater { pub const fn new(iterations: NonZeroU8, - buffer_size: usize) -> Self { - BufferedZopfliDeflater {iterations, buffer_size} + input_buffer_size: usize, + output_buffer_size: usize) -> Self { + BufferedZopfliDeflater {iterations, input_buffer_size, output_buffer_size } } } @@ -76,7 +78,7 @@ impl Deflater for BufferedZopfliDeflater { iteration_count: self.iterations, ..Default::default() }; - let mut buffer = BufWriter::with_capacity(self.buffer_size, + let mut buffer = BufWriter::with_capacity(self.input_buffer_size, DeflateEncoder::new( options, Default::default(), Cursor::new(Vec::new()))); let result = (|| -> io::Result> {